Pb de variable non defini avec switch

Signaler
Messages postés
6
Date d'inscription
vendredi 28 mai 2004
Statut
Membre
Dernière intervention
28 novembre 2004
-
Messages postés
1662
Date d'inscription
lundi 16 septembre 2002
Statut
Membre
Dernière intervention
30 juillet 2008
-
Bonjour
Je suis débutant et j'ai un petit probler avec mon code source
ce code se trouve sur index.php et donc lor du 1er lancement , la variable $mod n'existe pas et le message suivant apparé : "Notice: Undefined variable: mod in c:\program files\easyphp1-7\www\index.php on line 22" (ligne qui contien l'instruction switch)

merci par avance

switch($mod)
    {
    case 'forum':
        include ("forum.php");
        break;
    case 'livreor':
        include ("livreor.php");
        break;
    case 'profil':
        include ("profil.php");
        break;
    default:
        include ("centre.php");
    }

4 réponses

Messages postés
128
Date d'inscription
mardi 11 mai 2004
Statut
Membre
Dernière intervention
12 août 2005

Salut,
il faut que tu utilise la fonction isSet() pour verifier si une variable est definie.

if (!isSet($mod))
{
$mod="je suis defini maintenant";
}
Messages postés
47
Date d'inscription
vendredi 16 avril 2004
Statut
Membre
Dernière intervention
4 janvier 2006

Il te suffit de faire
switch(@$mod)

Comme ça s'il n'est pas défini tu n'auras pas de message d'erreur et il executera ce qui est contenu dans defaut donc include(centre.php)
Messages postés
6
Date d'inscription
vendredi 28 mai 2004
Statut
Membre
Dernière intervention
28 novembre 2004

merçi pour vos réponse (qui marche toute les deux)
Messages postés
1662
Date d'inscription
lundi 16 septembre 2002
Statut
Membre
Dernière intervention
30 juillet 2008
1
NE PAS FAIRE switch(@$mod)...
Les @ sont à proscrire sauf pour des choses que tu ne peux vraiment pas faire (connexion à des bases de données par exemple)

Tu utilises isset !