Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2446 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  checkbox à choix multiples

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

checkbox à choix multiples

n°1176484
blackmimi
Posté le 15-08-2005 à 14:06:29  profilanswer
 

Bonjour,  
Voilà mon problème:
je souhaite réaliser un formulaire dans lequel j'intègre des cases à cocher pour lesquelles il est possible d'en sélectionner plusieures.
Seulement si j'en coche plusieures, il me prend en compte uniquement la dernière cochée.
Pouvez-vous m'aider à rédiger mon code PHP (et HTML si celui-ci est faux)car ça fait plusieurs jour que je me prends la tête? Merci.
 
Code HTML:
<form method="post" action="test2contact.php">
  <p>Civilit&eacute;:
    <input name="civilite" type="checkbox" id="civilite" value="monsieur">
  Monsieur  
  <input name="civilite" type="checkbox" id="civilite" value="madame">
  Madame  
  <input name="civilite" type="checkbox" id="civilite" value="mademoiselle">
  Mademoiselle </p>
  <p>
    <input type="submit" name="Submit" value="Envoyer">
</p>
</form>
 
CODE PHP:
<?php
 
$destinataire= "monadresse@domaine.fr";
$objet = "Formulaire de contact";
$headers = "From: monsite.fr\n\r";
$headers .= "MIME-Version: 1.0\n\r";
$headers .= "Content-Type: text/html; charset=iso-8859-1\n\r";
 
 
$civilite =  
$items = "monsieur";
$items .= "madame";  
$items .= "mademoiselle";
 
for ($i = 0; $i <= $items; $i++) {
 
$civilite = $_POST['civilite'];}
 
$msg = "civilite = $civilite";
 
 
echo nl2br($msg);
 
mail($destinataire, $objet, $headers, $msg);
 
echo("<p><font face=verdana size=2>Votre message a bien été envoyé.<br>Merci d'avoir rempli ce formulaire.</font>" ); echo("<p> </p><p> </p><p align=\"center\" ><a href=\"test2contact.htm\"><strong>Retour</strong></a></p>" );
 
?>
 

mood
Publicité
Posté le 15-08-2005 à 14:06:29  profilanswer
 

n°1176488
pmusa
&#9619;&#9619;&#9619;&#9619;&#9619;&#9619;&#9619;
Posté le 15-08-2005 à 14:22:40  profilanswer
 

les checkbox sont inapropriées dans ce cas présent. un individu ne peut pas declarer sa civilité comme "homme" et "femme" à la fois.  :sweat: il faut utiliser les boutons radio. (input type="radio" )
 
et c'est normal que php ne conserve que la dernière valeur cochée vu que tu leur affecte la même "name" (input type="checkbox" name ="civilité" )... la dernière valeur cochée vient ecraser la précente.  [:airforceone]


---------------
intralase surgery [:cerveau love]
n°1176489
Profil sup​primé
Posté le 15-08-2005 à 14:29:12  answer
 

pmusa a écrit :

les checkbox sont inapropriées dans ce cas présent. un individu ne peut pas declarer sa civilité comme "homme" et "femme" à la fois.  :sweat: il faut utiliser les boutons radio. (input type="radio" )
 
Tout a fait logique
 
et c'est normal que php ne conserve que la dernière valeur cochée vu que tu leur affecte la même "name" (input type="checkbox" name ="civilité" )... la dernière valeur cochée vient ecraser la précente.  [:airforceone]
 
Il me semble qu'un tableau se crée lorsque plusieurs éléments ont le même nom non ? (enfin c'est un lointain souvenir, je dis peut être une annerie). A moins que cela ne concerne seulement les liste à choix multiple ?
 


Message édité par Profil supprimé le 15-08-2005 à 14:29:21
n°1176490
blackmimi
Posté le 15-08-2005 à 14:29:29  profilanswer
 

je sais mais en fait ici j'ai pris un exemple car je souhaite en faire un plus important par la suite. Donc à travers cet exemple, je souhaite comprendre comment ça marche. Pouvez-vous me dire comment faire svp? merci

n°1176498
pmusa
&#9619;&#9619;&#9619;&#9619;&#9619;&#9619;&#9619;
Posté le 15-08-2005 à 15:17:57  profilanswer
 

Citation :


Il me semble qu'un tableau se crée lorsque plusieurs éléments ont le même nom non ? (enfin c'est un lointain souvenir, je dis peut être une annerie). A moins que cela ne concerne seulement les liste à choix multiple ?  


 
non. dans ce cas il faudrai procéder avec input type="checkbox" name="civilité[]".
mais encore une fois c'est inapproprié. il faut utiliser les boutons radio.


---------------
intralase surgery [:cerveau love]
n°1176505
blackmimi
Posté le 15-08-2005 à 15:30:07  profilanswer
 

Je tiens à préciser que je ne souhaite pas utiliser des boutons radios mais bien des checkbox car je veux recevoir monsieur ET madame si la personne coche les 2. Autrement je crois bien qu'il faut utiliser des name=""civilite[]". Mais j'ai besoins qu'on m'aide dans mon code PHP car sinon dans mon mail je reçois civilite= array et non pas civilite= monsieur, madame ou quelque chose comme ça. Vous comprenez?

n°1176510
pmusa
&#9619;&#9619;&#9619;&#9619;&#9619;&#9619;&#9619;
Posté le 15-08-2005 à 15:36:49  profilanswer
 

Citation :


$civilite =  
$items = "monsieur";
$items .= "madame";  
$items .= "mademoiselle";
 
for ($i = 0; $i <= $items; $i++) {
 
$civilite = $_POST['civilite'];}
 
$msg = "civilite = $civilite";  


 
 :pt1cable:  :pt1cable:  :pt1cable:  
euhh... apprend d'abord le php après on t'aidera. là ça va t'avancer à rien si on te lance le code tout prêt.  :pfff:


---------------
intralase surgery [:cerveau love]
n°1176516
blackmimi
Posté le 15-08-2005 à 15:42:25  profilanswer
 

Si au contraire, j'ai lu plein de trucs et essayé plein de choses. Mais j'ai jamais trouvé par rapport à mon cas. c'est pour ça que maintenant je demande de l'aide!!!

n°1176636
naceroth
Posté le 15-08-2005 à 18:58:07  profilanswer
 

pmusa a écrit :

les checkbox sont inapropriées dans ce cas présent. un individu ne peut pas declarer sa civilité comme "homme" et "femme" à la fois.  :sweat: il faut utiliser les boutons radio. (input type="radio" )


 
S'il parlait du sexe, je veux bien, mais les civilités, y a pas de raison de ne pas pouvoir utiliser les deux en même temps :) (exemple concret : génération automatique d'un mail, si tu destines ton mail à un couple, la politesse voudrait quand même que tu commences par "Monsieur et Madame untel" plutôt que juste "Monsieur untel", macho mis à part :D).
 
Pour en revenir à la question de base, tu définis tes input comme

Code :
  1. <input type="checkbox" name="civilite[]" value="xyz" />


 
Ca va te renvoyer un tableau $_POST['civilite'] que tu pourras parcourir pour obtenir les différents résultats :)

n°1176646
pmusa
&#9619;&#9619;&#9619;&#9619;&#9619;&#9619;&#9619;
Posté le 15-08-2005 à 19:37:14  profilanswer
 

maaiiiiiiiis eeeeeeeeeeuuuuuuhhhhh j'lai dja dis avant tooiii.  :sweat:


---------------
intralase surgery [:cerveau love]
mood
Publicité
Posté le 15-08-2005 à 19:37:14  profilanswer
 

n°1176705
naceroth
Posté le 15-08-2005 à 21:23:11  profilanswer
 

Je voulais pas que ma réponse se limite à une correction sur le sens possible de "civilité" :D

n°1176749
blackmimi
Posté le 15-08-2005 à 23:12:27  profilanswer
 

D'accord Naceroth, mais j'ai fait ça (dans mon html) et quand je coche je reçois dans mon mail civilite=Array.
Que dois-je donc faire dans mon php pour recevoir mes cases cochées????

n°1176766
naceroth
Posté le 15-08-2005 à 23:42:38  profilanswer
 

Juste par curiosité, tu appris un peu le php avant de te lancer dans ça ? Ou pour être encore plus précis, tu sais ce qu'est un tableau en php et comment on le parcourt ? Si oui, c'est exactement pareil ici.
 
Sinon, file me lire au moins la doc sur les tableaux (ici) et celle sur la structure foreach (), histoire d'avoir quelques bases :)

n°1176779
blackmimi
Posté le 16-08-2005 à 00:11:26  profilanswer
 

aie aie aie!!!! Il y en a pour des mois à lire tout ça!!!!
ça a l'air hyper compliqué pour un débutant.
Non sérieux j'y connais rien et c'est vrai que j'ai pas trop le temps de tout potasser surtout que ma demande est assez urgente (je suis cençé terminer cette semaine et je bloque plus que sur ça!). Tu peux pas m'aider dans la rédaction de mon code svp?

n°1176783
xtof_83
Freeride Spirit
Posté le 16-08-2005 à 00:17:57  profilanswer
 

Ben c'est con, mais on va comme meme pas faire le taf à ta place...
 
On sait que c'est dur...mais c'est comme cela que l'on apprend...
 
Aller courage, linfo n'est que logique...
C'est vraiment pas sorcier du tout du tout...
 
Et puis te donner ainsi la soluce...te servirais à quoi?
A finir ton projet...bon argument..mais faire un truc sans en comprendre la mondre chose...pas top...

n°1176784
blackmimi
Posté le 16-08-2005 à 00:20:48  profilanswer
 

allez soyez sympa!!! je vous promet d'apprendre après, mais là j'en ai vraiment besoin rapidement!!!

n°1176785
masklinn
í dag viðrar vel til loftárása
Posté le 16-08-2005 à 00:22:50  profilanswer
 

blackmimi a écrit :

aie aie aie!!!! Il y en a pour des mois à lire tout ça!!!!


 [:f@bek]


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1176786
xtof_83
Freeride Spirit
Posté le 16-08-2005 à 00:25:15  profilanswer
 

Bon on fait quoi, il a lair sincére...or not?

n°1176802
blackmimi
Posté le 16-08-2005 à 01:55:19  profilanswer
 

j'ai l'impression que c'est ça qui ne va pas: $civilite = $_POST['civilite'];} et qui me génère un civilité=array??
Qu'en pensez-vous??

n°1176807
Profil sup​primé
Posté le 16-08-2005 à 03:00:42  answer
 

blackmimi a écrit :

j'ai l'impression que c'est ça qui ne va pas: $civilite = $_POST['civilite'];} et qui me génère un civilité=array??
Qu'en pensez-vous??


evidemment que c'est un tableau ! si tu comprends meme pas civilite[] vas pas plus loin, lis un book ou apprends php DU DEBUT sur le net


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  checkbox à choix multiples

 

Sujets relatifs
XSD : type de données multiples ?Comment verifier si un checkbox est coché ?
[PHP - MySQL] Récupérer choix d'un "enum" dans BDDProblème Repeater + Checkbox
checkbox desactive mais quand meme visibleApplet ou JS¨P de choix d'un fichier
[HTML] Gros problème de Checkbox[HTML] Combo box choix multiple
URGENT PB de transfert de variables de checkbox a PHPpd de liste deroulante: le choix ne reste pas
Plus de sujets relatifs à : checkbox à choix multiples


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR