Plusieurs valeurs à un champ de formulaire

Petit nouveau ! | 3 Messages

22 avr. 2005, 13:58

Salut tout le monde

pour mon travail j'ai créé un espace membre (enfin j'ai réutilisé un script déjà créé).
A un moment il y a un formulaire d'inscription ou on rentre diverses valeurs. L'une des valeurs est la suivante : on doit selectionner un ou plusieurs corps d'etats à l'aide de cases à cocher :
[code]<input name="type_de_travaux" type="checkbox" id="genie_civil" value="G&eacute;nie civil">
G&eacute;nie civil<br>
<input name="type_de_travaux" type="checkbox" id="maconnerie" value="Maconnerie">
Maconnerie<br>
<input name="type_de_travaux" type="checkbox" id="gros_oeuvre" value="Gros oeuvre">
Gros oeuvre<br>
<input name="type_de_travaux" type="checkbox" id="cloisonnements" value="Cloisonnements">
Cloisonnements<br>
<input name="type_de_travaux" type="checkbox" id="plafonds_suspendus" value="Plafonds suspendus">
Plafonds suspendus<br>
<input name="type_de_travaux" type="checkbox" id="revetement_sols" value="Rev&ecirc;tement de sols">
Rev&ecirc;tement de sols<br>
<input name="type_de_travaux" type="checkbox" id="revetement_murs" value="Rev&ecirc;tement de murs">
Rev&ecirc;tement de murs<br>
<input name="type_de_travaux" type="checkbox" id="peinture" value="Peinture">
Peinture<br>
<input name="type_de_travaux" type="checkbox" id="menuiserie" value="Menuiserie">
Menuiserie<br>
<input name="type_de_travaux" type="checkbox" id="climatisation" value="Climatisation">
Climatisation<br>
<input name="type_de_travaux" type="checkbox" id="electricit&eacute;" value="Electricit&eacute;">
Electricit&eacute;<br>
<input name="type_de_travaux" type="checkbox" id="reseaux_informatique" value="R&eacute;seaux informatiques">
R&eacute;seaux informatiques<br>
<input name="type_de_travaux" type="checkbox" id="reseaux_communication" value="Electricit&eacute;">
R&eacute;seaux
de communication [/code]
Et quand je veux récupérer les valeurs de ces cases, dans la page privée (à l'aide ce code : <? echo "$type_de_travaux"; ?> ça me met que la première valeur cochée.

Savez-vous comme remédier à ce pb ?

Merci beaucoup !

Guillaume

Mammouth du PHP | 19672 Messages

22 avr. 2005, 14:02

Yes :
<input name="type_de_travaux[]"
Comme ça, tu auras tous les résultas dans un tableau indexé :)
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Petit nouveau ! | 3 Messages

22 avr. 2005, 16:16

merci beaucoup de ta réponse mais j'ai une erreur lors de la génération de la page :
Parse error: parse error, expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' in /home/smfm/www/espace_fournisseur/adduser.php3 on line 76


La ligne 76 contient :
$requete=mysql_db_query($sql_bdd,"insert into membre values ($idnew,\"$id\",\"$pseudo_membre\",\"$passe_membre\",\"$raison_sociale\",\"$adresse\",\"$code_postal\",\"$ville\",\"$telephone\",\"$fax\",\"$email\",\"$siret\",\"$code_ape\",\"$rc\",\"$nom\",\"$prenom\",\"$mobile\",[b]\"$type_de_travaux\",[/b]\"$departement_intervention\")",$db_link) or die(mysql_error());

Mammouth du PHP | 19672 Messages

22 avr. 2005, 17:20

Il y a des mélanges dans la chaine:
VOici comment je l'aurais écrite :
$requete=mysql_db_query($sql_bdd,"insert into membre values (". $idnew .",". $id .",'". $pseudo_membre ."','". $passe_membre ."','". $raison_sociale ."','". $adresse ."','". $code_postal ."','". $ville ."','". $telephone ."','". $fax ."','". $email ."','". $siret ."','". $code_ape ."','". $rc ."','". $nom ."','". $prenom ."','". $mobile ."','". $type_de_travaux ."','". $departement_intervention .")",$db_link) or die(mysql_error());
Attention, l'utilisation de caractères d'échappement dans une requête SQL pour MySQL : les champs peuvent être encadrés d'apostrophes (') au lieux de guillemets (") ce qui ne viens pas nuire à la chaine PHP.
Il peut encore y avoir une autre erreur possible lors de l'enregistrement du coté de MySQL cette fois-ci : s'il y a des apostrophes dans les chaines de caractère auquel cas il faudra préparer les variables avant de les mettre dans la requête par l'utilisation de la fonction addslashes().
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Petit nouveau ! | 3 Messages

22 avr. 2005, 17:38

merci beaucoup de ton aide précieuse, je verrai ça se soir là j'ai la testa qui va exploser !

en tout cas c'est gentil d'avoir pris du temps pour me répondre :)