Version complète: sur le forum Webmaster Hub : formulaire multi choix
Webmaster Hub > Création et exploitation de Sites Internet > Les langages du Net > PHP
burinho
Bonjour,

voilà j'ai créé un formulaire avec des checkbox, mais je sais pas comment faire pour pouvoir inscrire le choix chosie.

je suppose qu'il faut utiliser une boucle for
skale
salut,
tu as différentes solutions. Oui, tu peux utiliser une boucle for, si tu connais les paramètres à récupérer. Pour ma part, j'utilise une boucle foreach (suivie d'un switch) sur le tableau $_POST (si tu envoies les éléments par post). Si la checkbox est cochée, l'élément $_POST["checkbox"] a la valeur "On", sinon il n'est pas défini.

skale
burinho
j'ai jamais utilisé foreach
Anonymus
Utilisation de foreach :

Soit un tableau :
CODE
$tableau[0]="";
$tableau[1]="Ain";
$tableau[2]="Aisne";
$tableau[3]="Allier";
$tableau[4]="Paris";


que l'on veut parcourir. On a soit la méthode 'for', qui dit :
A partir du premier élément, on prend jusqu'au dernier élément, en incrémentant de un le tableau.
On affiche ainsi l'ensemble du tableau :

CODE
for($x = 0;$x<count($tableau);$x++)
 echo "<br>-".$tableau[$x];

Cette méthode est pratique, mais souffre de deux inconvénients.
Le premier est que si l'on détruit un index, par exemple l'index '2', la boucle est erronée. sad.gif
Le deuxieme est ci-dessous..

Mais s'il s'agit d'un tableau sans index numérique, comme par exemple les variables renvoyées par un formulaire html, on a la boucle 'foreach'.
Elle dit, donc :
Pour chaque élément du tableau, on prend l'index (numérique ou non), et sa valeur, et on boucle.

Ca donne :
CODE
$_POST['nom']="Anonymus";
$_POST['age']="34";
$_POST['Ville']="Lyon";
$_POST['submit']="Soumettre";


Pour parcourir un tableau comme ceci :
CODE
foreach($_POST as $index => $valeur)
echo "<br>\$_POST['".$index."']=\"".$valeur."\"";


Tu devrais essayer, c'est vraiment trivial wink.gif
Les variables $index et $valeur peuvent s'appeler n'importe comment, évidement. Ca marche aussi comme ceci :
CODE
foreach($_POST as $a => $b)
 echo "<br>".$a."--->".$b;


Donc, lorsque tu fais un formulaire, tu renvoies sur une page (quelconque). Il est une bonne idée, si tu ne veux pas faire d'erreur, de placer ce morceau de programme (cette boucle) en haut de la page qui recoit les données, pour se rappeler les variables renvoyées par le formulaire.

Boucle :
CODE
foreach($_POST as $index => $valeur)
echo "<br>\$_POST['".$index."']=\"".$valeur."\"";

Inutile de dire que ca marche également avec les autres tableaux :
$_GET, $_SESSION, $GLOBALS, $picasso (un tableau laugh.gif ), etc..

Anonymus.

ps : Burinho, tu n'as plus d'excuses wink.gif
burinho
bon je vais essayer !!
lupucide
Anonymus => merci pour cette explication, j'ai enfin compris l'utilisation de foreach rolleyes.gif
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'information, la mise en page et les images, veuillez cliquer ici.