Pb de chaînes et de champs de formulaire

Résolu/Fermé
konnors - 23 févr. 2009 à 14:18
 konnors - 23 févr. 2009 à 15:31
Bonjour, à tous !
J'ai un problème coriace qui me charcute depuis ce matin. Je suis entrain de développer un petit site web dans le cadre d'un TP sur la programmation web. Je m'en sortait plutôt pas mal jusqu'à ce que je découvre un comportement bizzare au niveau de tous les champs de type <INPUT ....> de la plus part, mais je suppose de tous mes formulaire.
- je parviens sans problème à inserér des données dans la base
- je parviens également à les supprimer aisément .
- le hic se trouve au niveau de mis à jour d'une donnée ssuis aperçu que lo
En effet :
lorsque je mettre un champ à jour, je clique sur un lien qui appelle une autre page où sont charger les différentes valeurs des champs correspondants à cet enregistrement dans la base. je me suis aperçu que dans les champs de type <input ..>, lorsque la valeur à afficher (chargée depuis la base) pour modification comporte un espace (vide, ), seul le premier mot (la première chaîne de caractère) constituant le texte à afficher étatit effectivement affichée.
j'ai d'abord pensé immédiatement à une limitation du nombre de caractètes dans le champs, mais vérification faite il n'en comportait pas et de plus pour les deux chaînes suivantes que j'ai testées (Super administrateur - Administrator roots) c'est systématiquemment le premier mot (Super - Administrator) qui apparait entièrement. ce nétait donc pas un pb de longueur de chaîne.
Par ailleurs, dans un soucis d'embellissement, j'ai appliqué un css, à toutes les balises <input> du genre : input{
color:#000066;
background-color:#CCCCCC;
font-family:Geneva, Arial, Helvetica, sans-serif;
font-size:15;
width:400;
height:15;
border:0px;
}
dans un fichier .css. L'appel se passe sans aucun pb comme suit:
<head>
<link type="text/css" href="style_tracktrace.css" rel="stylesheet">
</head>
dans mon fichier cible et du coup tous les champs de type <input ...> étaient plus présentables on va dire. Mais même lorsque je met ce code (celui du fichier css) en commentaire, les chapms reprennent un aspect normal mais la coupure des chaîne sde caractères continue.
J'ai beau chercher dans mon code, il n'y aucun autre bout de code qui agisse sur eux (les champs de type input). Je suis à court d'idées. Je serais très reconnaissant à tous ceux et toutes celles qui pouraient me proposer une démarche, une astuce ou tuyau (lien ou autre) pouvant m'aider. Merci d'avance
NB : Si ça peut aider je travaille sur la version 9.2 du navigateur Opera et IE 6 sous une plateforme windows XP

2 réponses

gigaga Messages postés 2346 Date d'inscription vendredi 20 juin 2008 Statut Membre Dernière intervention 22 août 2014 301
23 févr. 2009 à 14:22
Tu dois avoir quelque part dans ton code : <input value=$valeur>. Il faut que tu encapsules la valeur avec des guillemets! <input value="$valeur">
0
Merci pour ta réaction aussi rapide gigaga, mais rien n'y fait c'est le même résultat. voici le code de remplissage d'un de mes champs casse-tête tu y trouveras peut-être la solution qui sait:

<?php echo'<input type="text" name="lib_pro" id="lib_pro" value='.$mlibpro.'>'; ?>

où $mlibpro est une variable (dont j'ai testée la valeur et qui s'avère être correcte) dont le contenu vient d'une requête sur ma base de données.

Si tu as des propositions je suis tout ouvert.
0
gigaga Messages postés 2346 Date d'inscription vendredi 20 juin 2008 Statut Membre Dernière intervention 22 août 2014 301
23 févr. 2009 à 15:04
Faut mettre :
<?php echo '<input type="text" name="lib_pro" id="lib_pro" value="'.$mlibpro.'">'; ?>

Note les " ajoutés pour ta variable $mlibpro.
0
C'est dans la poche, c'est bon, ouf je respire. Merci beaucoup gigaga sans toi j'étais peut-être bon pour longue veillée casse-tête. Salut et merci encore pour le coup de main t'es génial
0