Probleme Undefined variable sur du PHP

Bonjour,

Je crée mon site web mais je ne comprends pas il m'indique cette erreur :
Notice: Undefined variable: page in C:\EasyPHP5.3.0\www\bc\index.php on line 28
Apres plusieurs recherche sur google je ne parviens pas à comprendre mon erreur.
voici le code :

<div id="page">

<?php
include("themes/header.php");
?>
<div id="conteneur">
<?php
if(isset($page)){
if(!is_numeric($page)){
echo "Erreur page inconnu";
exit;
}
}
switch($page)
{
case'0': include("page/accueil.php");
break;
default: include("page/accueil.php");
break;
}

?>
</div>
</div>

Merci pour votre aide

8 réponses

  1. Salut !

    Ton script ne détecte aucune variable $page, probablement dans ton switch. D'où est-elle sensée venir ? Es-tu certain(e) de l'avoir déclarée ?

    Je te recommande ceci :
    if (isset($page)) {
    	if (!is_numeric($page)) {
    		echo "Erreur page inconnu";
    	} else {
    		switch($page) {
    			case '0': include("page/accueil.php"); break;
    			default : include("page/accueil.php"); break;
    		}
    	}
    }
    

    Note où j'ai placé le switch.

    J'ignore si c'était ce que tu voulais faire, sinon assure-toi que ta variable est déclarée et de préférence, fais une vérification. Un autre if (isset($page)) pourrait être la solution.
    Nommez vos sujets de manière pertinente pour de meilleures chances de réponses !
    Et n'oubliez pas de mettre votre sujet à "Résolu" s'il l'est effectivement ! Tourlou !
    0
    1. d'accord je vais l'essayer mais je copie coller se script ou ???

      a quel endroit sur ma page ?

      merci
      0
      1. désolé mauvais problème je croyais être sur une autre question
        0
        1. salut,

          j'ai modifier un peut mon script.
          enfaite ca viens de ma variable qui n'est pas déclarer car j'ai essayer de mettre cela $page = $_GET['page']; mais biensur comme le lien et www.monsite/index.php ca plante mais quand je mets cela tout marche www.monsite/index.php?page=1

          je vais essayer ton script je te dit si cela marche pour mon utilisation.

          Merci,
          0
          1. Oui c'est un problème courant.
            Au pire, donne seulement une valeur par défaut à $page quand $_GET['page'] n'est pas défini, ça va régler beaucoup de troubles ;-)
            0
        2. pour donner une valeur a $_GET['page'] comment peut on faire pour la prise par défaut.
          0
          1. Le but ne serait pas tant de donner une valeur par défaut à $_GET['page'] mais plus de faire quelque chose comme :
            $page = (isset($_GET['page']) && $_GET['page'] != '' ? $_GET['page'] : 'default_value');
            

            au lieu de juste :
            $page = $_GET['page'];
            
            0
            1. Merci ca marche a la perfection.
              0