[PHP] recuperation de variable
MOI
-
Reivax962 Messages postés 3742 Statut Membre -
Reivax962 Messages postés 3742 Statut Membre -
Bonjour,
Je voudrais savoir s'il est possible de récupérer des variables d'une page à l'autre par un $_POST mais sachant qu'on connait pas le champ ?
Je m'explique :
- dans ma première page j'ai des INPUT avec un 'name' dynamique (car je ne sais pas combien j'ai de INPUT en tout)
- dans ma seconde page, je voudrais récuperer les valeurs renseignées, mais comme je connais pas le nom, je les régénere dans des variables pour pouvoir faire ensuite le $_POST
En gros cela donne ça :
$var1 = 'NAME'.$numero;
$var2 = $_POST['var1' ]
Seulement la synthaxe de cette deuxième ligne ne marche pas (j'ai aussi essayé avec des doubles cotes et sans rien).. Est-ce que cela est impossible ? Si oui comment ?
D'avance merci
Je voudrais savoir s'il est possible de récupérer des variables d'une page à l'autre par un $_POST mais sachant qu'on connait pas le champ ?
Je m'explique :
- dans ma première page j'ai des INPUT avec un 'name' dynamique (car je ne sais pas combien j'ai de INPUT en tout)
- dans ma seconde page, je voudrais récuperer les valeurs renseignées, mais comme je connais pas le nom, je les régénere dans des variables pour pouvoir faire ensuite le $_POST
En gros cela donne ça :
$var1 = 'NAME'.$numero;
$var2 = $_POST['var1' ]
Seulement la synthaxe de cette deuxième ligne ne marche pas (j'ai aussi essayé avec des doubles cotes et sans rien).. Est-ce que cela est impossible ? Si oui comment ?
D'avance merci
Configuration: Windows XP Internet Explorer 7.0
4 réponses
-
Bonjour,
Il est possible de récupérer toutes les variables $_POST['NAME...'].
Pour cela tu peux faire un foreach sur la variable $_POST et si la clé commence par NAME, tu fais le traitement que tu veux :
echo "les valeurs de renseigne de la forme NAME... sont : "; foreach($_POST as $cle => $valeur) { if(substr($cle,0,4)=='NAME') echo $valeur." ; "; } -
Merci pour votre réponse...
J'ai testé mais cela ne marche pas, en fait quand je fais un simple echo 'test'; dans le foreach, le mot 'test' n'apparait jamais sur ma page, donc en fait il ne rentre jamais dedans.. -
Les champs commencent bien par NAME ?
Pourrais tu mettre la partie du code de la page qui genere le formulaire? -
Bonjour,
Pour en revenir à ton premier exemple, il faut tout simplement enlever les quotes, et mettre le dollar !
$var2 = $_POST[$var1];
Bonne chance pour la suite,
Xavier