A voir également:
- Pb variable PHP undefined
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Vba range avec variable ✓ - Forum VB / VBA
- Undefined traduction - Forum Javascript
- Range avec une Variable ✓ - Forum VB / VBA
6 réponses
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." :::.
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]
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." :::.
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']);
?>