Probleme de reccuperation de données avec checkbox (php)

Résolu
aspchallenge Messages postés 11 Date d'inscription mercredi 15 septembre 2004 Statut Membre Dernière intervention 3 mars 2005 - 11 janv. 2005 à 15:47
cs_GRenard Messages postés 1662 Date d'inscription lundi 16 septembre 2002 Statut Membre Dernière intervention 30 juillet 2008 - 12 janv. 2005 à 14:02
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

cs_krevette Messages postés 137 Date d'inscription lundi 14 octobre 2002 Statut Membre Dernière intervention 21 janvier 2009
11 janv. 2005 à 16:07
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 ;-)
3
cs_GRenard Messages postés 1662 Date d'inscription lundi 16 septembre 2002 Statut Membre Dernière intervention 30 juillet 2008 1
11 janv. 2005 à 17:37
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
3
aspchallenge Messages postés 11 Date d'inscription mercredi 15 septembre 2004 Statut Membre Dernière intervention 3 mars 2005
12 janv. 2005 à 11:06
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.
0
cs_GRenard Messages postés 1662 Date d'inscription lundi 16 septembre 2002 Statut Membre Dernière intervention 30 juillet 2008 1
12 janv. 2005 à 14:02
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
0
Rejoignez-nous