Page 1 sur 3

comment faire avec une boucle for()

Posté : 04 nov. 2010, 23:12
par stephcache
bonsoir, je voudrais faire une boucle avec la focntion for() pour faire répété sa $jour_1 = $_POST['jour_1'].

for($i=1;$i<$n_ligne+1;$i++)
{
$jour_$i = $_POST['jour_$i'];
}

Voila ce que voudrais faire mais je sais pas comment faire

Merci d'avance

Re: comment faire avec une boucle for()

Posté : 04 nov. 2010, 23:19
par stealth35
hello, il faut mettre des double quote pour que $i sois interprété

Re: comment faire avec une boucle for()

Posté : 04 nov. 2010, 23:23
par popy
Berk...

Code : Tout sélectionner

for($i=1;$i<$n_ligne+1;$i++) { $name = 'jour_' . $i; $$name = $_POST[$name]; }
C'est horrible mais ça marche. Et pourquoi tu veux absolument créer des variables ? t'as quelque chose contre l'utilisation de $_POST[$name]; ?

Re: comment faire avec une boucle for()

Posté : 04 nov. 2010, 23:27
par stephcache
non non rien contre le POST, c'est que j'ai besoin de faire comme sa. c'est tous

Re: comment faire avec une boucle for()

Posté : 04 nov. 2010, 23:59
par popy
"besoin"...

Re: comment faire avec une boucle for()

Posté : 05 nov. 2010, 11:22
par Ganesh
Bonjour,

Un des côtés pratiques de PHP, c'est que bien souvent il est inutile de réinventer la roue :import-request-variables

Re: comment faire avec une boucle for()

Posté : 05 nov. 2010, 12:45
par JulienPhp
Bonjour,

Pour ça y a des tableaux.
Voir aussi la solution élégante proposé par Ganesh.

Sinon, tu peux toujours faire ça :
for($i=1;$i<$n_ligne+1;$i++)
{
${'jour_'.$i} = $_POST['jour_'.$i];
}

Re: comment faire avec une boucle for()

Posté : 05 nov. 2010, 12:46
par stealth35
ou faire ni l'un ni l'autre parce que c'est pas sécurisé

Re: comment faire avec une boucle for()

Posté : 05 nov. 2010, 12:57
par popy
Ben, la, si.
Tout comme le import-request-variables (que je ne connaissais pas) s'il est bien utilisé.

C'est juste moche.

Re: comment faire avec une boucle for()

Posté : 05 nov. 2010, 13:01
par stealth35
Ben, la, si.
Tout comme le import-request-variables (que je ne connaissais pas) s'il est bien utilisé.

C'est juste moche.
non, c'est pas sécuriser tu peux écraser n'importe quelle variable avec un simple POST

Re: comment faire avec une boucle for()

Posté : 05 nov. 2010, 14:16
par Ganesh
Ben, la, si.
Tout comme le import-request-variables (que je ne connaissais pas) s'il est bien utilisé.

C'est juste moche.
non, c'est pas sécuriser tu peux écraser n'importe quelle variable avec un simple POST
Comme tout code, cela demande de l'organisation et de la rigueur. L'utilisation d'un préfixe adéquat rend impossible tout écrasement de variable à partir du moment où le postulat de ma première phrase est respecté.

Re: comment faire avec une boucle for()

Posté : 05 nov. 2010, 14:52
par telnes
hello

c'est pas un hasard que register_global est passé à OFF depuis bien 5 ans :)

Re: comment faire avec une boucle for()

Posté : 05 nov. 2010, 15:07
par Mazarini
Bonjour,

Je pense que le "besoin de faire comme ca" est le problème. Il y a surement une solution permettant de gérer ca en tableau. Il me semble même que l'on puisse remplacer le $_POST['jour_'.$i] par $_POST['jour'][$i] en mettant name="jour[x]" dans le html.

Re: comment faire avec une boucle for()

Posté : 05 nov. 2010, 15:07
par popy
Ben, la, si.
Tout comme le import-request-variables (que je ne connaissais pas) s'il est bien utilisé.

C'est juste moche.
non, c'est pas sécuriser tu peux écraser n'importe quelle variable avec un simple POST
Ben vas-y, donne moi un exemple.

Re: comment faire avec une boucle for()

Posté : 05 nov. 2010, 15:26
par stealth35