jadiema
Messages postés8Date d'inscriptiondimanche 25 janvier 2004StatutMembreDernière intervention22 janvier 2006
-
25 janv. 2004 à 11:26
jadiema
Messages postés8Date d'inscriptiondimanche 25 janvier 2004StatutMembreDernière intervention22 janvier 2006
-
27 janv. 2004 à 21:16
J'ai crée dans un fichier PHP un formulaire FORM avec un bouton SUBMIT. A l'intérieur de ce form, j'effectue une boucle qui crée des input text dont le nom est indexée sur la valeur de la variable qui s'incrémente.
Par exemple, avec un form et une boucle de 5 valeurs de la variable i le nom des input text est formé comme ceci:
name=<? echo "Var".$i;?>
ce qui me crée donc 5 variables Var1, Var2...Var5.
Quand l'utilisateur appuie sur SUBMIT, j'aimerais récupérer les valeurs Var1 à Var5 à l'aide d'une boucle comme ceci
for ($i = 1; $i <= 15; $i++)
{
echo "La Variable n°".$i." = ".$Var.$i;
}
Mais cela ne marche pas. Au lieu de me donner la valeur de la variable correspondante , j'obtiens simplement le texte Var1 à Var5.
Si par contre j'explicite chacune des variables e.g. $Var1, $Var2 à $Var5, je récupère bien les valeurs.
nicowatt
Messages postés74Date d'inscriptionmercredi 15 janvier 2003StatutMembreDernière intervention18 janvier 2013 25 janv. 2004 à 18:04
C'est assez marrant de voir que ce genre de problème existe !!! :-)
Pour répondre à ton problème, une simple réponse:
name="Var[<?echo $i;?>]"
et oui, les tableaux en HTML, ca marche.
en fait si tu écris des noms de variables en HTMl avec cette syntaxe:
name=ma_variable[]
quand tu envoies le formulaire HTMl, PHP reçois une variable ma_variable de type array (matrice)
tu peux aussi ajouter des dimensions à ta matrice:
name=ma_variable[][][][][] etc...
Tu peux affecter des noms ou des numéros (appelé clef en PHP)
name=ma_variable[nom]
name=ma_variable[prenom]
name=ma_variable[tel]
name=ma_variable[1]
name=ma_variable[2]
Dans mon exemple tu inseres ta variable i en tant que nom de clef (key)
jadiema
Messages postés8Date d'inscriptiondimanche 25 janvier 2004StatutMembreDernière intervention22 janvier 2006 27 janv. 2004 à 21:16
Je te remercie pour cette solution.
En fait quelques minutes après avoir posté ce message, j'ai trouvé une solution qui marche bien. J'utilise
une boucle du style
for ($k = 1; $k <= $count(var); $k++)
{
$mavar = $HTTP_POST_VARS["mavar$k"];
}
avec tout simplement $HTTP_POST_VARS qui me permet de récupérer les varibales indéxées par le formulaire.