Probleme de reccuperation de données avec checkbox (php) [Résolu]

Signaler
Messages postés
11
Date d'inscription
mercredi 15 septembre 2004
Statut
Membre
Dernière intervention
3 mars 2005
-
Messages postés
1662
Date d'inscription
lundi 16 septembre 2002
Statut
Membre
Dernière intervention
30 juillet 2008
-
Bonjour,



Voila je bloque sur le traitement de données provenant d'un formulaire
avec CheckBox qui est cense par la suite permette la gestion des
membres incrits sur un site.



j'utilise une la fonction list($truc,$bidule) = each($choix) ou choix
est le tableau qui contient les valeur des differentes checkbox.



Seulement voila, j'obtiens le message suivant lors de l'execution:



Warning : Variable passed to each() is not an array or object in c:\program files\easyphp1-7\www\test\traitement.php on line 10



J'ai donc refait un test dans un programme très simple, mais le resultat est le meme.

Voila le code de Test.php



<html>

<head>

<title>Test</title>

</head>





<?

echo"<form action ='Traitement.php' method='post'>\n";



$Compteur=1;

for( $i=0;$i<=5;$i++)

{

echo"$Compteur\n";

$Compteur++;

}



echo"";

?>





</html>



Ce code Appel donc la page Traitement.php qui lors de l'execution m'affiche le message d'erreur, vu plus haut.



traitement.php:



<html>

<head>

<title>Traitement</title>

</head>





<?

While (list($cle,$valeur)=each($choix))

echo"$choix[$cle] => $valeur
";

?>





</html>






Voila, je sens que ca doit etre unpetit truc mais je seche total
, alors si l'un de vous a deja rencontrer ce probleme, he ben je dis
pas non a un coup de pouce. Ce serait bien urbain.



Merci beaucoup.



Benjamin.

4 réponses

Messages postés
137
Date d'inscription
lundi 14 octobre 2002
Statut
Membre
Dernière intervention
21 janvier 2009

essaie ca



Test.php



<html>

<head>

<title>Test</title>

</head>





<?

echo"<form action='Traitement.php' method='post'>\n";



$Compteur=1;

for( $i=0;$i<=5;$i++)

{

echo"$Compteur\n";

$Compteur++;

}



echo"";

?>





</html>

krevette ;-)
Messages postés
1662
Date d'inscription
lundi 16 septembre 2002
Statut
Membre
Dernière intervention
30 juillet 2008
1
Son code marchait très bien, la seule chose c'est qu'il faut utiliser $_POST au lieu de $choix direct...

(tu peux faire un isset() aussi avant pour vérifier)




<?php
while (list($cle,$valeur)=each($_POST['choix']))

echo $cle.' => '.$valeur .'
';

?>

PHP Guru
Écoutez les conseils d'un vieux sage ! Ils sont souvent très utiles.
http://www.lookstrike.com
Messages postés
11
Date d'inscription
mercredi 15 septembre 2004
Statut
Membre
Dernière intervention
3 mars 2005

Niquel, que j'utilise l'un ou l'autre sa fonctionne.

En fait maintenant que j'y repense j'avais du essayer t'a reponse PHP
Guru, mais comme je n'avais cochée aucune chekbox, forcement, le
tableau etait vide et donc il m'apparassait le message d'erreur.( D'ou
le isset() conseiller, je viens de percuter à l'instant...)

Quoiqu'il en soit, merci beaucoup à tous les deux pour votre aide et votre réactivité.

Et vivement que j'ai un bon niveau pour pouvoir sortirs d'autres
personnes d'un mauvais pas et peut etre meme un jour l'un de vous 2 !




Benjamin.
Messages postés
1662
Date d'inscription
lundi 16 septembre 2002
Statut
Membre
Dernière intervention
30 juillet 2008
1
Choisis Réponse Acceptée pour les réponses qui t'ont aidées !

PHP Guru
Écoutez les conseils d'un vieux sage ! Ils sont souvent très utiles.
http://www.lookstrike.com