A voir également:
- Pb variable PHP undefined
- Easy php - Télécharger - Divers Web & Internet
- Php natif - Forum PHP
- Variable objet ou variable de bloc with non définie - Forum VB / VBA
- Impossible de créer le fichier de travail. vérifiez la variable d'environnement temp ✓ - Forum Word
6 réponses
flokocha
Messages postés
1510
Date d'inscription
lundi 8 mars 2004
Statut
Membre
Dernière intervention
10 octobre 2015
281
12 mai 2004 à 10:07
12 mai 2004 à 10:07
Si tu utilises la version 4.2 de PHP ou plus, les variables globales ne sont plus activées par défaut, pour des raisons de sécurité.
Tu as donc 2 solutions:
- Soit tu vas dans le fichier de configuration de PHP et tu réactives les variables globales.
- Soit tu changes ta dernière ligne en fct_menu($tabmenu["choixmenu"],$GET_['menu']);
.::: "A trop vouloir feindre de faire fi, on finit
par faire fi de vouloir feindre." :::.
Tu as donc 2 solutions:
- Soit tu vas dans le fichier de configuration de PHP et tu réactives les variables globales.
- Soit tu changes ta dernière ligne en fct_menu($tabmenu["choixmenu"],$GET_['menu']);
.::: "A trop vouloir feindre de faire fi, on finit
par faire fi de vouloir feindre." :::.
Taboujr
Messages postés
507
Date d'inscription
vendredi 18 janvier 2002
Statut
Membre
Dernière intervention
2 janvier 2008
117
12 mai 2004 à 10:24
12 mai 2004 à 10:24
Hmm, j'ai un doute. D'abord c'est $_GET et pas $GET (mais l'erreur est humaine). Mais a priori, si l'index n'existe pas dans $HTTP_GET_VARS, il n'existera pas non plus dans $_GET.
A mon avis, le plus simple est de vérifier l'existence de l'index 'menu' avec la fonction array_key_exists et si il n'existe pas, de le créer en lui affectant une valeur par défaut.
Exemple :
.:: TaBou JuNioR ::.
J'ai des questions à toutes vos réponses. [W. Allen]
A mon avis, le plus simple est de vérifier l'existence de l'index 'menu' avec la fonction array_key_exists et si il n'existe pas, de le créer en lui affectant une valeur par défaut.
Exemple :
if (!array_key_exists('menu',$_GET)) $_GET['menu']=0;
.:: TaBou JuNioR ::.
J'ai des questions à toutes vos réponses. [W. Allen]
flokocha
Messages postés
1510
Date d'inscription
lundi 8 mars 2004
Statut
Membre
Dernière intervention
10 octobre 2015
281
12 mai 2004 à 10:30
12 mai 2004 à 10:30
Oui excuse moi pour l'erreur, mais c'est parce que j'ai juste enlevé des bouts de ton code d'origine, d'où l'erreur.
Pour en revenir à ton message je dirais que ça dépend.
Soit effectivement l'index n'est pas transmis et dans ce cas ça ne changera rien.
Mais, je répète, ça peut venir aussi du fait que tes variables globales ne sont pas activées, donc si tu fais un $HTTP_GET_VARS, l'index n'existera pas, mais si tu utilises $_GET et que l'index est bien transmis, ça fonctionnera car $_GET n'utilise pas les variables globales.
.::: "A trop vouloir feindre de faire fi, on finit
par faire fi de vouloir feindre." :::.
Pour en revenir à ton message je dirais que ça dépend.
Soit effectivement l'index n'est pas transmis et dans ce cas ça ne changera rien.
Mais, je répète, ça peut venir aussi du fait que tes variables globales ne sont pas activées, donc si tu fais un $HTTP_GET_VARS, l'index n'existera pas, mais si tu utilises $_GET et que l'index est bien transmis, ça fonctionnera car $_GET n'utilise pas les variables globales.
.::: "A trop vouloir feindre de faire fi, on finit
par faire fi de vouloir feindre." :::.
flokocha
Messages postés
1510
Date d'inscription
lundi 8 mars 2004
Statut
Membre
Dernière intervention
10 octobre 2015
281
>
Utilisateur anonyme
12 mai 2004 à 10:51
12 mai 2004 à 10:51
Dans mon manuel de PHP, il est écrit que $_GET est une 'superglobal', tandis que $HTTP_GET_VARS n'est pas autoglobale.
.::: "A trop vouloir feindre de faire fi, on finit
par faire fi de vouloir feindre." :::.
.::: "A trop vouloir feindre de faire fi, on finit
par faire fi de vouloir feindre." :::.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
J'ai testé les différentes solutions avec le $_get cela ne fonctionne pas .
par contre avec : if (!array_key_exists('menu',$_GET)) $_GET['menu']=0; il ne m'ammfciheplus le contenu de mon menu et sous menu il doit lui manquer queleque chose...
par contre avec : if (!array_key_exists('menu',$_GET)) $_GET['menu']=0; il ne m'ammfciheplus le contenu de mon menu et sous menu il doit lui manquer queleque chose...
Alors ca marche pr le menu en haut mais par pour le sous menu :
<link href="../../css/style.css" rel="stylesheet" type="text/css">
<?php
$tab=array(
"billetterie"=>array(
array("Sports / Détente","sports.php"),
array("Spectacles / CIE","spectacles.php"),
array("Cinémas","cinemas.php"),
array("Parcs d'attraction / Zoos","parcs.php"),
array("Location vidéos","videos.php")
),
"autre"=>array(
array("Autre","billetterie.php"),
array("Spectacles / CIE","spectacles.php"),
array("Cinémas","cinemas.php"),
array("Parcs / Zoos","parcs.php"),
array("Location vidéos","videos.php")
)
);
function fct_sousmenu($liste,$selection="0"){
print("<table width=\"110\" border=\"0\" cellpadding=\"5\" cellspacing=\"0\" >");
for($n=0;$n<count($liste);$n=$n+1){
print("<TR><TD ");
if ($n==$selection)
{
print("class=\"overssmenu\"");
}
else
{
print("class=\"onssmenu\"");
}
$a=$liste[$n];
print("><A href=\"index.php?sousmenu=$n\"> $a[0] </A></TD></TR>");
}
print("</table>");
};
if (!array_key_exists('sousmenu',$_GET)) $_GET['sousmenu']=0;
fct_sousmenu($tab["billetterie"],$HTTP_GET_VARS['sousmenu']);
?>
<link href="../../css/style.css" rel="stylesheet" type="text/css">
<?php
$tab=array(
"billetterie"=>array(
array("Sports / Détente","sports.php"),
array("Spectacles / CIE","spectacles.php"),
array("Cinémas","cinemas.php"),
array("Parcs d'attraction / Zoos","parcs.php"),
array("Location vidéos","videos.php")
),
"autre"=>array(
array("Autre","billetterie.php"),
array("Spectacles / CIE","spectacles.php"),
array("Cinémas","cinemas.php"),
array("Parcs / Zoos","parcs.php"),
array("Location vidéos","videos.php")
)
);
function fct_sousmenu($liste,$selection="0"){
print("<table width=\"110\" border=\"0\" cellpadding=\"5\" cellspacing=\"0\" >");
for($n=0;$n<count($liste);$n=$n+1){
print("<TR><TD ");
if ($n==$selection)
{
print("class=\"overssmenu\"");
}
else
{
print("class=\"onssmenu\"");
}
$a=$liste[$n];
print("><A href=\"index.php?sousmenu=$n\"> $a[0] </A></TD></TR>");
}
print("</table>");
};
if (!array_key_exists('sousmenu',$_GET)) $_GET['sousmenu']=0;
fct_sousmenu($tab["billetterie"],$HTTP_GET_VARS['sousmenu']);
?>