Check box HTML / PHP
Résolu
linkje
Messages postés
124
Date d'inscription
Statut
Membre
Dernière intervention
-
brute Messages postés 112 Date d'inscription Statut Membre Dernière intervention -
brute Messages postés 112 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai fait un formulaire en HTML qui se crée grace à une base de donnée mysql.
$row['idArt']; correspond à l'article que je séléctionne. Je ne peux donc pas le changer. (J'anticipe la réponse parce que j'ai deja vu cette réponse sur les forums.)
Dans ce formulaire, j'ai aussi rajouter un compteur pour savoir combien d'entrée j'affiche afin de faire une boucle correcte.
Voici donc la page qui récupère les informations du formulaire. (Jusque la aucun souci, je présentai la démarche.)
Conclusion,
- la boucle fonctionne correctement et le nombre de fois qu'il faut.
- le var_dump m'affiche rien du tout
- l'echo du choixModule non plus
- $maChaine affiche que les slash. je me retrouve donc avec le nombre de slash correspondant au nombre de tour dans la boucle.
Donc voila, je ne trouve pas d'ou vient le problème, je suppose tout de meme que c'est la récuperation qui ne marche pas.
Merci de prendre du temps pour moi et de m'expliquer d'ou provient l'erreur.
J'ai fait un formulaire en HTML qui se crée grace à une base de donnée mysql.
<input type="checkbox" name="choixModule_<?php echo $i;?>" value="<?php echo $row['idArt'];?>" >
$row['idArt']; correspond à l'article que je séléctionne. Je ne peux donc pas le changer. (J'anticipe la réponse parce que j'ai deja vu cette réponse sur les forums.)
Dans ce formulaire, j'ai aussi rajouter un compteur pour savoir combien d'entrée j'affiche afin de faire une boucle correcte.
<input type="hidden" name="nbEntree" value="<?php echo $i;?>" />
Voici donc la page qui récupère les informations du formulaire. (Jusque la aucun souci, je présentai la démarche.)
for ($i=0;$i<=$_POST['nbEntree'];$i++ ){ if ($_POST['choixModule_'.$i]) { var_dump($_POST['choixModule_'.$i]); echo $_POST['choixModule_'.$i]; $maChaine .= '/'.$_POST['choixModule'.$i]; // Correspond à l'id de l'article coché (modules) séparé par des slash. } } $_SESSION['choixModule'] = $maChaine; // Enregistrement des modules choisis. echo $_SESSION['choixModule'];
Conclusion,
- la boucle fonctionne correctement et le nombre de fois qu'il faut.
- le var_dump m'affiche rien du tout
- l'echo du choixModule non plus
- $maChaine affiche que les slash. je me retrouve donc avec le nombre de slash correspondant au nombre de tour dans la boucle.
Donc voila, je ne trouve pas d'ou vient le problème, je suppose tout de meme que c'est la récuperation qui ne marche pas.
Merci de prendre du temps pour moi et de m'expliquer d'ou provient l'erreur.
A voir également:
- Check box HTML / PHP
- Set-top box - Accueil - Box & Connexion Internet
- Check disk - Guide
- Editeur html - Télécharger - HTML
- Adresse ip box - Guide
- Br html ✓ - Forum Webmastering
3 réponses
<?php for ($i=0;$i<=$_POST['nbEntree'];$i++ ){ //déja la tu avait une erreur i allait de 0 à nbEntrée donc 1 fois de trop 0 à 5 ça fait 6 pas il aurrait fallut mettre $i<$_POST['nbEntree'] if ($_POST['choixModule_'.$i]) { var_dump($_POST['choixModule_'.$i]); echo $_POST['choixModule_'.$i]; $maChaine .= '/'.$_POST['choixModule'.$i]; // Correspond à l'id de l'article coché (modules) séparé par des slash. } } $_SESSION['choixModule'] = $maChaine; // Enregistrement des modules choisis. echo $_SESSION['choixModule']; ?>
une autre solution:
<input type="checkbox" name="choixModule[]" value="<?php echo $row['idArt'];?>" > le name avec les [] permet d'avoir les checkbox sous forme d'array, plus besoin de nbEntree en Hidden <?php $maChaine=""; //pour concatener par .= il vaut mieux l'initialiser à vide avant for($i=0; $i<sizeof($_POST['choixModule']);$i++){ //echo $_POST['choixModule'][$i]; $maChaine .= '/'.$_POST['choixModule'][$i]; // Correspond à l'id de l'article coché (modules) séparé par des slash. } $_SESSION['choixModule'] = $maChaine; // Enregistrement des modules choisis. echo $_SESSION['choixModule']; ?>