problème variable url

WRInaute discret
Bonjour,

J'ai un problème avec mon serveur, lorsque je met dans l'url des variables style : index?page=accueil&class=2

Les variables $page et $class ne sont pas affectés.
Sauriez vous pourquoi ?

Merci :)
 
WRInaute impliqué
c un peu vague ta question ! tu dis pas l'extension du fichier index :)

je suppose que c'est index.php ; donc sans doute un probleme de register_globals..

essayes de recuperer tes variables avec $_GET['page'] et $_GET['class']
 
WRInaute discret
Oui dsl c'est du php, j'ai oublié l'extension.

Avec $_GET['page'] ça marche :)

J'ai fait un phpinfo() et les register_globals sont désactivés or dans mon php.ini ils sont activés :/
Peut être que sur c'est sur mon serveur web virtuel qu'il est désactivé. Sauriez vous comment l'activer si c'est le cas ?

Pourtant le Master value et le Local value de register globals est à Off dans le phpinfo, je ne comprend rien.

Merci.
 
WRInaute accro
Au pire, tu peux mettre ça au début de chaque page (dans ton header si tu en a un) :

while(list($key,$val)=each($_POST)){
$$key=$val;
}
while(list($key,$val)=each($_GET)){
$$key=$val;
}

Mais bon, c'est un peu bidouille... mais ça dépanne bien en attendant.
 
WRInaute impliqué
Il n'est pas utile de le remettre a ON, en fait, si il avait ete a ON il aurait plutot fallu le mettre a OFF :)

Tu accedes a tes variables avec $_REQUEST['nom_variable'] de facon generale, ou si tu veux etre plus precis :


$_GET pour les variables passees dans l'url
$_POST pour celles passees dans un formulaire en post
$_COOKIE pour les cookies
$_ENV pour les variables d'environnement
$_SERVER pour les variables serveur (si qqn peut m'expliquer la difference avec $_ENV je veux bien eheh)
$_SESSION pour tes variables de session si tu utilises les sessions php

voila, il me semble qu'on a fait le tour la.
 
WRInaute impliqué
blman a dit:
Au pire, tu peux mettre ça au début de chaque page (dans ton header si tu en a un) :

while(list($key,$val)=each($_POST)){
$$key=$val;
}
while(list($key,$val)=each($_GET)){
$$key=$val;
}

Mais bon, c'est un peu bidouille... mais ça dépanne bien en attendant.

je le recommande pas du tout :)

si tu veux vraiment pas de register global a off, tu peux faire ca :

if (!@ini_set('register_globals', 1)) foreach ($_REQUEST as $k=>$v) $$k = $v;

mais bon, c vraiment la bidouille, et pas sur que ca marche pour les tableaux...
 
WRInaute accro
fbparis a dit:
blman a dit:
Au pire, tu peux mettre ça au début de chaque page (dans ton header si tu en a un) :

while(list($key,$val)=each($_POST)){
$$key=$val;
}
while(list($key,$val)=each($_GET)){
$$key=$val;
}

Mais bon, c'est un peu bidouille... mais ça dépanne bien en attendant.

je le recommande pas du tout :)

si tu veux vraiment pas de register global a off, tu peux faire ca :

if (!@ini_set('register_globals', 1)) foreach ($_REQUEST as $k=>$v) $$k = $v;

mais bon, c vraiment la bidouille, et pas sur que ca marche pour les tableaux...

Pourquoi tu ne le recommande pas du tout ? Ca pause un problème de sécurité ?
 
WRInaute accro
oui, mais la fonction recupere en 1 seule ligne toutes les variables get, post, et cookie, pas besoin de faire 3 boucles :)
 
Discussions similaires
Haut