Problème site en php

Bonjour,
Voilà donc je suis entrain de faire un site web en PHP, hier j'avais tout fini tout marcher niquel quand je tester en local sur mon pc, ce matin j'arrive je relance le meme fichier comme hier et là plein d'erreurs
Cela m'est arrivé il y a 3 jours il me suffisait de supprimer le cache dans les options internet et de redémarrer, mais là quand je le refais ça ne marche pas, même en ayant tout supprimer dans les options internet.Je ne sais pas d'où ça vient, alors que hier soir tout marchait niquel.
Si quelqu'un peut m'aider ça serait cool. Merci
Ger.
Configuration: Windows Vista
Internet Explorer 7.0

14 réponses

  1. Sans doute avait-il encore en mémoire des variables de session qui lui permettait de fonctionner ou autre chose du style.
    Quels sont les messages d'erreurs?
    0
    1. ben oui c'est ce qu'on m'a dit mais maintenant ça me le refait mais quand je supprime les caches et tout ben les erreurs restents

      Notice: Undefined variable: lang in C:\Program Files\EasyPHP 3.0\www\germain_final\header.php on line 31
      Notice: Undefined variable: lang in C:\Program Files\EasyPHP 3.0\www\germain_final\header.php on line 32
      Notice: Undefined variable: lang in C:\Program Files\EasyPHP 3.0\www\germain_final\header.php on line 33
      Notice: Undefined variable: lang in C:\Program Files\EasyPHP 3.0\www\germain_final\header.php on line 34

      du style ça, mais je vois pas pourquoi hier ça marchait très bien et la derniere fois j'avais exactement les meme erreurs
      0
      1. Contributeur
        C'est la variable $lang qui n'est pas définit ^^ si tu as un $lang = $_GET['quelquechose'] ou $lang = $_POST['quelquechose'] ou $lang = $_SESSION['quelquechose'] ça peut être normal comme erreur.

        Tu as bien fait un test isset() sur toutes tes variables comme ça?
        0
        1. <?php
          session_start();
          if(!isset($_SESSION['lang'])AND file_exists($_SESSION['lang'].'.php'))
          {
          $_SESSION['lang']='lang_fr.php';
          }
          if(isset($_GET['lang'])AND file_exists($_SESSION['lang'].'.php'))
          {
          $_SESSION['lang'] = ($_GET['lang'].".php");
          }
          include ($_SESSION['lang']);?>

          j'ai ça mais ça marchait niquel hier et l'autre jour mais j'ai ces erreurs qui reviennent je sais pas pourquoi, la derniere fois j'ai reboot et hop c t bon
          0
          1. Contributeur
            Il y a quoi à la ligne 34 de ton header.php??
            0
            1. 31 : <li><a href="accueil.php"><?php echo $lang["accueil"];?> </a></li>
              32 : <li><a href="solutions.php"><?php echo $lang["solutions"];?> </a></li>
              33 : <li><a href="nousContacter.php"><?php echo $lang["contact"];?> </a></li>
              34 : <li><a href="goodies.php"><?php echo $lang["goodies"];?> </a></li>
              0
              1. Contributeur
                if(!isset($_SESSION['lang'])AND file_exists($_SESSION['lang'].'.php')) 
                { 
                $_SESSION['lang']='lang_fr.php'; 
                } 
                if(isset($_GET['lang'])AND file_exists($_SESSION['lang'].'.php')) 
                { 
                $_SESSION['lang'] = ($_GET['lang'].".php"); 
                } 


                C'est un peu bancal non? ...

                if(!isset($_SESSION['lang'])AND file_exists($_SESSION['lang'].'.php')) 

                == si la variable n'est pas définit qu'un fichier avec le nom de la variable existe ...

                Comment c'est possible un fichier avec le nom de la variable si elle est pas définit ?
                if(isset($_GET['lang'])AND file_exists($_SESSION['lang'].'.php')) 
                { 
                $_SESSION['lang'] = ($_GET['lang'].".php"); 
                }

                Ok mais un petit
                else {
                $_SESSION['lang'] = "lang_fr.php"; 

                à la suite serait pas mal non?
                0
                1. Contributeur
                  Où est définit ta variable $lang ?

                  Parce que c'est elle qui pose problème dans le cas présent .
                  0
                  1. Si c'est celle reprise du $_GET['lang'] faudrai rajouter une ligne $lang = $_GET['lang'];
                    0
                  2. Contributeur
                    @artheziusCa peut pas être ça. $lang est un tableau ^^
                    0
                2. heu j'ai pas tout compris mais j'ai fait ça

                  <?php
                  session_start();
                  if(!isset($_SESSION['lang'])AND file_exists($_SESSION['lang'].'.php'))
                  {
                  $_SESSION['lang']='lang_fr.php';
                  }
                  if(isset($_GET['lang'])AND file_exists($_SESSION['lang'].'.php'))
                  {
                  $_SESSION['lang'] = ($_GET['lang'].".php");
                  }
                  else
                  {
                  $_SESSION['lang'] = "lang_fr.php";
                  }
                  include ($_SESSION['lang']);?>

                  et là ça marche mais quand je veux changer de langue ça reste en Francais mais je vois pas ce que le else vient faire là si je détermine déja la langue en Fr par défaut ici :

                  if(!isset($_SESSION['lang'])AND file_exists($_SESSION['lang'].'.php'))
                  {
                  $_SESSION['lang']='lang_fr.php';
                  }
                  0
                  1. En fait tu devrai supprimer cette ligne:
                    if(!isset($_SESSION['lang'])AND file_exists($_SESSION['lang'].'.php'))
                    {
                    $_SESSION['lang']='lang_fr.php';
                    }

                    Dans la finalité elle ne sert à rien.
                    0
                  2. <?php
                    $lang = array("welcome" => "Bienvenue",

                    //Titre
                    "title" => "ENTROPIA S.A. - Solutions Informatique d'Entreprise",

                    //Menu
                    "accueil" => "Accueil",
                    "solutions" => "Solutions",
                    "contact" => "Nous contacter",
                    "goodies" => "Goodies",

                    mon $lang c un tableau ou je sais pas quoi, en fait j'ai 3 fichiers lang_fr ; lang_uk ; lang_lu dans leskels je traduis mes textes
                    0
                3. Contributeur
                  Ben alors laisse comme tu avais mis mais remlplace le $_GET['lang'] par une variable que tu définira avant tes 2 if comme ça :

                  if ( isset($_GET['lang']) )
                  {
                  $language = $_GET['lang'];
                  }
                  else
                  {
                  $language = lang_fr;
                  }
                  0
                  1. Y'aura plus qu'a rajouter un
                    include ('.$langage.'.php);
                    0
                4. quand je fais il me remet les meme erreurs qu'avant, bordel je deviens fouuuuuuuuuu j'y comprends rien lol
                  hier ça marchait niquel les langues changé quand je cliqué sur les drapeaux c t nikel et la pu rien c le bordel
                  0
                  1. Si ça marche plus c'est qu'il y a dans tout les cas des erreurs.

                    Il t'affiche précisement quoi maintenant?
                    0
                5. j'ai remis comme d'origine et j'ai d'autre messages d'erreur mtn

                  <br />
                  <b>Notice</b>: Use of undefined constant lang_fr - assumed 'lang_fr' in <b>C:\Program Files\EasyPHP 3.0\www\germain_final\header.php</b> on line <b>9</b><br />
                  <br />
                  <b>Notice</b>: Use of undefined constant php - assumed 'php' in <b>C:\Program Files\EasyPHP 3.0\www\germain_final\header.php</b> on line <b>11</b><br />
                  <br />
                  <b>Warning</b>: include(.$langage.php) [<a href='function.include'>function.include</a>]: failed to open stream: No such file or directory in <b>C:\Program Files\EasyPHP 3.0\www\germain_final\header.php</b> on line <b>11</b><br />
                  <br />
                  <b>Warning</b>: include() [<a href='function.include'>function.include</a>]: Failed opening '.$langage.php' for inclusion (include_path='.;C:/Program Files/EasyPHP 3.0\php\inclu

                  je n'ai meme plus de $langage pk il me met sa :'( c un truc de fou :@
                  0