Partage
  • Partager sur Facebook
  • Partager sur Twitter

Probeme de variable de session

Depuis le passage a PHP 4.4 chez OVH rien ne va plus :(

    28 août 2006 à 19:30:38

    Bonsoir,
    Je suis parti en vacanaces il y a de ca 15 jours et j'ai eu l'occasion de bosser sur mes script en local avec easyPHP. Mais voila, OVH, mon hebergeur, à eu le temps de changer de version de PHP durant mon absence (de la 4.3 on est passé à la 4.4.4) et le comportement des session s'en est, apparament, vu modifié.
    Je m'explique:
    Lors de l'authentification sur mon site, une page spéciale s'occupe de la conexion et initialise, en autres, une variable sur la session donnant la partie du site sur lequel l'utilisateur se trouve (ici, vu que c'est l'init. ça donne la partie de depart). Ca ressemble à ca:


    $_SESSION['idRes'] = "STC";


    Ensuite, vu que la valeur est censée etre conservée dans la session, je peut l'utiliser partout ou je veut et c'est là que ca derape.
    A la suite l'authentification, une redirection vers l'index intervient et j'essaye de recupere la valeur de la variable pour choisir mes styles CSS par exemple et un bout de code (detaillé ci-dessous) permet de changer la valeur de $_SESSION['idRes'] si une variable du meme nom est passé dans l'URL.


    //La fonction en haut de page qui me permet de recuperer des variables URL sans me soucier de la methode de transmition
    function recupVar($var, $newvalue){
      if(isset($_POST[$var])) $var = $_POST[$var];
      else $var = (isset($_GET[$var])) ? $_GET[$var] : $newvalue;
      return $var;
    }

    //Recuperation et insertion dans la cession
    $idRes = recupVar("idRes", NULL);//Variable URL et valeur par defaut = NULL;
    if ($idRes != NULL){
      $_SESSION['idRes'] = $idRes;//Si quelque chose est passé dans l'URL on l'insere dans la session
    }


    Dans les tests que j'ai pu faire, je me suis apercu que si $idRes == NULL, $_SESSION['idRes'] n'avait aucune valeur également... les valeurs des variables ne serait-elles pas conservées dans la session?

    (ma page contient bien session_start(); dans chaque page)

    Si vous pensez avoir la solution à mon probleme, faites le moi savoir...

    Merci et bonne soirée
    • Partager sur Facebook
    • Partager sur Twitter
      30 août 2006 à 13:47:45

      Et avant d'appliquer la fonction, $_SESSION['idRes'] vaut quoi?

      Ca peut peut etre venir du register global = on sur OVH
      • Partager sur Facebook
      • Partager sur Twitter
        31 août 2006 à 19:00:17

        Désole je n'ai pas precisé ca. $_SESSION['idRes'] vaut "STC" au depart
        et change ensuite lorsque une variable du meme nom est présente dans l'URL, sinon, rien ne se passe et elle reste a la meme valeur.
        Pour finir, c'est quoi cette histoire de register global = on sur ovh?

        merci de ta reponse
        • Partager sur Facebook
        • Partager sur Twitter

        Probeme de variable de session

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown