
le 23/01/2006 à 11:45
Problème de variable
Lu,
alors :
while (list($var, $value) = each($HTTP_GET_VARS))
{
$tab_asso["$var"] = $value;
}
Inutile, utilise directement le tableau $_GET ou $HTTP_GET_VARS a moins d'y effectuer une opération sur ces vars. Ca revient à dire "Je monte en haut" (Pléonasme).
Ensuite $tab[var] correspond comme dit Glob, à definir comme clé du tableau $tab, la constante var et non la chaine de caractère var. Evidement si on definit pas var, var va retourner sa propre valeur var.
Concrétement ca donne :
Donc il faut bien délimiter vos chaines dans les tableau pour spécifier une chaine de caracs et non une constante.
Pour ton problème. Y a t'il une erreur renvoyée ? as tu fais un echo de ta var ? la clef d'un tableau renvoyé par un form, correspond au name et non à value. Ensuite pourquoi ne passer par la method POST, beaucoup plus sécurisé pour un formulaire ?
alors :
while (list($var, $value) = each($HTTP_GET_VARS))
{
$tab_asso["$var"] = $value;
}
Inutile, utilise directement le tableau $_GET ou $HTTP_GET_VARS a moins d'y effectuer une opération sur ces vars. Ca revient à dire "Je monte en haut" (Pléonasme).
Ensuite $tab[var] correspond comme dit Glob, à definir comme clé du tableau $tab, la constante var et non la chaine de caractère var. Evidement si on definit pas var, var va retourner sa propre valeur var.
Concrétement ca donne :
<?php
$tab = Array('toto' => 'tata');
echo $tab[toto]; // Retourne tata.
define('toto', 'autre');
echo $tab[toto]; // Retourne undefined puisque maintenant on appelle $tab['autre'] qui n'existe pas.
?>
Donc il faut bien délimiter vos chaines dans les tableau pour spécifier une chaine de caracs et non une constante.
Pour ton problème. Y a t'il une erreur renvoyée ? as tu fais un echo de ta var ? la clef d'un tableau renvoyé par un form, correspond au name et non à value. Ensuite pourquoi ne passer par la method POST, beaucoup plus sécurisé pour un formulaire ?