Page 1 sur 1

Variables Dynamiques et $_GET (ou $_POST)

Posté : 31 mars 2011, 00:22
par PierrO
Bonjour à toutes et à tous,

voila j'ai une question certes bête mais que je n'arrive pas a résoudre et dont je n' ai pas trouvé de réponse durant cette heure de recherche que je viens de passer de Forum en Forum... (bon 1 heure j'exagère un peu c'est vrai ;-)

Donc voila mon "histoire" :
Je construit un formulaire avec des Select.
Ces selects sont construit via PHP car j'utilise une base MySQL pour récuperer les Options du select
Certains de ces selects reload la page afin de faire apparaitre de nouveaux champs du formulaire.
Jusque la tout va bien, ou presque car j'aimerais lors de ces reloads avoir la possibilité de laisser les valeurs sélectionnées dans les select précédents.
J'y arrive plus ou moins mais afin de rendre mon script réutilisable j'ai besoin d'utiliser des variables dynamiques.
Donc ma question est :
Est t'il possible de récupérer des variables dynamiques (en GET ou POST) dans le style :
$_GET["${$mavariable}"];
car j'ai essayé comme ca et ca marche pO.... :cry:

Merci d'avance et n'hestez pas a me dire si ce message n'est pas assez clair.

PierrO

Re: Variables Dynamiques et $_GET (ou $_POST)

Posté : 31 mars 2011, 08:02
par xTG
Essayes plutôt ainsi :
$_GET[$$mavariable]

Re: Variables Dynamiques et $_GET (ou $_POST)

Posté : 31 mars 2011, 14:11
par PierrO
Merci,

Je vais tester ça des ce soir et clôture ce post si c'est OK.
Mais je crois avoir essayer cette solution et avoir tjs le même message d'erreur.

Mais je vérifie quand même.

Merci

Re: Variables Dynamiques et $_GET (ou $_POST)

Posté : 31 mars 2011, 15:26
par moogli
salut,

si tu nous donnais un exemple concret de ce que tu veut faire, car j'aurais répondu comme xTg, mais j'ai peur que cela soit un peu a coté.
Pour cela il faudrait savoir comment le reload est fait et ainsi voir comment repositionner ton formulaire.

si tu fait un "submit" tu peut passer par les sessions, ou directement ré afficher le $_GET ou $_POST en fonction de la méthode du formulaire et de la façon dont tu procède.

si tu utilise Ajax, ben pas de reload la liste ce met à jour toute seul comme une grande ;)

@+

Re: Variables Dynamiques et $_GET (ou $_POST)

Posté : 31 mars 2011, 21:49
par hevy75
Ajax... malheureusement cele m'est completement inconnu pour le moment ;-)

Sinon Voici le code dans lequel je veux utiliser cette variable dynamique :
//nom de ma table
$table = "table";
//Name de mon select
$select_name = "NOM_SELECT";

//Requete SQL de selection des differents element de le table
$req=mysql_query("SELECT distinct " . $select_name . " FROM " . $table);
	
//Creation des variables utilisées dans le select
echo "<SELECT NAME=" . $select_name . ">\n";
echo "<option>Choisissez dans la liste</option>\n";

//Contrustion de mes options via un while
	while($tab=mysql_fetch_assoc($req)){

// => C'est la que j'ai besoin de savoir comment récupérer la valeur contenue dans $NOM_SELECT (${$select_name}) en cas de reload par onChange=\"document.plan_action.submit() pour vérifier quelle valeur a été selectionnée dans le select et la garder selectionnée
		//=> ne fonctionne pas
		if ($_GET[${$select_name}]==$tab[$select_name])
			{$str=" selected";}
		else
			{$str="";}
		echo 	"<option value=" . $tab[$select_name]  . $str . ">"
			. $tab[$select_name]
			. "</option>\n";
	}		
	echo "</select>";
Voila j'espere que c'est clair pour vous.

Merci d'avance.

Re: Variables Dynamiques et $_GET (ou $_POST)

Posté : 31 mars 2011, 23:58
par moogli
heu en fait c'est relativement simple, pourquoi utiliser une variable dynamique (qui de toute façon sera toujours la même) alors que tu connais le nom du champs ?

if ( $_GET[$select_name] == $tab[$select_name] ) devrait suffir ?


@+