Checkbox et php
Résolu
cinqheures
-
fsyteaj44 -
fsyteaj44 -
Bonjour,
"Petit" problème, du moins pour moi....
J'ai créé un formulaire avec différentes rubriques (texte, email, bouton radio, checkbox). Je reçois sans problème toutes les données rentrées par mail, via PHP, mais en ce qui concerne les checkbox cela coince.
Extrait de la partie HTML du formulaire :
<fieldset>
<div>
<input type="checkbox" name="visite"[] value="antiquaires"/> Visite des antiquaires
<input type="checkbox" name="visite"[] value="musees"/> Visite des musées
</div>
</fieldset>
Extrait de la partie PHP
$message.="(visite) ";
for ($i=0; $i<count($visite); ++$i)
$message.=$visite[$i].",";
$message.="\r\n";
$message ($to,$subject,$message$from)
En "réponse" je reçois toujours la valeur "musée" ou plus exactement la valeur "m".
Où se situe le problème ???
MERCI
"Petit" problème, du moins pour moi....
J'ai créé un formulaire avec différentes rubriques (texte, email, bouton radio, checkbox). Je reçois sans problème toutes les données rentrées par mail, via PHP, mais en ce qui concerne les checkbox cela coince.
Extrait de la partie HTML du formulaire :
<fieldset>
<div>
<input type="checkbox" name="visite"[] value="antiquaires"/> Visite des antiquaires
<input type="checkbox" name="visite"[] value="musees"/> Visite des musées
</div>
</fieldset>
Extrait de la partie PHP
$message.="(visite) ";
for ($i=0; $i<count($visite); ++$i)
$message.=$visite[$i].",";
$message.="\r\n";
$message ($to,$subject,$message$from)
En "réponse" je reçois toujours la valeur "musée" ou plus exactement la valeur "m".
Où se situe le problème ???
MERCI
A voir également:
- Checkbox et php
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Retour à la ligne php ✓ - Forum PHP
- Alert php - Forum PHP
- Retour a la ligne php ✓ - Forum PHP
6 réponses
Bonjour
Le problème est dans le formulaire. les [] devraient faire partie du name, et donc être entre les deux "
Tel que tu l'as écrit, tes deux checkbox s'appellent "visite" et non pas "visite[]"
Donc count($visite) te rend 1 (car $visite n'est pas un tableau)
et $visite[0] te rend "m" car une simple chaîne indexée comme un tableau est considérée comme un tableau de caractères, tu en récupères le premier.
Le problème est dans le formulaire. les [] devraient faire partie du name, et donc être entre les deux "
Tel que tu l'as écrit, tes deux checkbox s'appellent "visite" et non pas "visite[]"
Donc count($visite) te rend 1 (car $visite n'est pas un tableau)
et $visite[0] te rend "m" car une simple chaîne indexée comme un tableau est considérée comme un tableau de caractères, tu en récupères le premier.
Effectue une variation sur:
Johan
johand@osiris: ~/www/data/buttons $ cat form.html <html> <body> <form action="results.php" method="POST" > <input type="checkbox" name="visite[]" value="antiquaires"/> Visite des antiquaires <input type="checkbox" name="visite[]" value="musees"/> Visite des musées <input type="submit" value="Envoyer" /> </form> </body> </html> johand@osiris: ~/www/data/buttons $ cat results.php <?php echo "<html><body>\n"; print_r($_POST); $message.="(visite) "; for ($i=0; $i < count($_POST["visite"]) ; $i++) $message.= $_POST["visite"][$i]. ", " ; $message.="\r\n</body></html>"; print $message;
Johan
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question