Partage
  • Partager sur Facebook
  • Partager sur Twitter

Problème enfantin $_SESSION

Sujet résolu
    16 novembre 2018 à 11:30:59

    Bonjour à tous,

    Je n'arrive pas à récupérer une variable de session:

    fichier1:

    <?php
    session_start();
    
    $_SESSION['datas'] = 'babar';
    

    fichier2:

    <?php
    session_start();
    
    
    if(isset($_SESSION['datas'])) {
        echo $_SESSION['datas'];
    }else{
        echo 'error';
    }

    Evidemment ça me renvoit "error" et je comprends pas pourquoi.

    Merci à celui ou celle d'entre vous qui saura m'éclairer sur ce problème.

    • Partager sur Facebook
    • Partager sur Twitter

    Au pire tu meurs...

      16 novembre 2018 à 11:44:54

      Hello,

      fichier2 , ligne 3,  fais un var_dump($_SESSION);

      Que retourne le tableau ? 

      Tu n'as pas un BOM par hasard (ligne 3 toujours)

      -
      Edité par Lucky13 16 novembre 2018 à 11:45:29

      • Partager sur Facebook
      • Partager sur Twitter
        16 novembre 2018 à 11:57:00

        Merci Lucky13 pour ta réponse.

        voici le retour:

        array(0) {
        }


        Je ne pense pas avoir de BOM.

        -
        Edité par sasha034 16 novembre 2018 à 11:59:04

        • Partager sur Facebook
        • Partager sur Twitter

        Au pire tu meurs...

          16 novembre 2018 à 12:13:05

          array(0) donc rien dan tableau ^^

          isset = false donc echo 'error'

          Tu accèdes comment au fichier 2 ? par un lien <a href="" ?

          -
          Edité par Lucky13 16 novembre 2018 à 12:13:28

          • Partager sur Facebook
          • Partager sur Twitter
            16 novembre 2018 à 12:54:27

            Il n'y a pas d'accès d'un fichier à l'autre, c'est la raison pour laquelle je veux utiliser une variable de session pour  'tranférer' une donnée d'un fichier à l'autre.

            Pas d'IHM.

            -
            Edité par sasha034 16 novembre 2018 à 12:56:47

            • Partager sur Facebook
            • Partager sur Twitter

            Au pire tu meurs...

              16 novembre 2018 à 14:09:16

              Hello

              essaie sa 

              $babar=array('babar');
              $_SESSION['datas'] = $babar;



              • Partager sur Facebook
              • Partager sur Twitter
                16 novembre 2018 à 14:10:19

                Quand est appelé le 1er script ? et le 2nd ?
                • Partager sur Facebook
                • Partager sur Twitter
                  16 novembre 2018 à 14:16:42

                  Ascola3 a écrit:

                  Hello

                  essaie sa 

                  $babar=array('babar');
                  $_SESSION['datas'] = $babar;



                  non rien dis 

                  C'est un problème de cookie je pense, regarde dans ton navigateur si tu as bien le cookie PHPSESSID dans ton fichier 2 



                  • Partager sur Facebook
                  • Partager sur Twitter
                    16 novembre 2018 à 14:38:00

                    C'est moi qui suit bête, Je viens de comprendre..:)

                    En fait le fichier2 n'était pas "lié" au navigateur...

                    Si je rajoute un <a href> ça fonctionne.

                    Le problème c'est que je eux tranférer mes datas sans passer par le navigateur..

                    Du coup les variables de sessions sont peut-être pas indiquées. :euh:

                    • Partager sur Facebook
                    • Partager sur Twitter

                    Au pire tu meurs...

                      16 novembre 2018 à 17:21:25

                      Sans passer par le navigateur je vois pas trop ce que tu veux dire. La super variable session enregistre un petit cookie qui reste présent dans ton navigateur. Tu peux quitter et réouvrir ton navigateur sans que ce cookie soit supprimé. Dès lors que ta session est ouverte et que ta variable est enregistré, tu peux naviguer sur toute les pages que tu veux, cette variable existera toujours tant que le cookie n'arrivera pas a son termes ou que la session n'est pas destroy . Sinon, Tu peux utilisé une base de données a ce moment la , t'es data seront conserver indéfiniment et la manipulation est plus complète  

                      • Partager sur Facebook
                      • Partager sur Twitter
                        16 novembre 2018 à 20:29:59

                        Ouvrir une session, $_SESSION[] c'est un tableau[] (array), le fichier est comme un cookie mais stocké côté serveur et non client.

                         sasha034, si tu veux tu savoir c'est ici -> https://www.julp.fr/articles/17-php-cookies-et-sessions.html 

                        -
                        Edité par Lucky13 16 novembre 2018 à 20:31:35

                        • Partager sur Facebook
                        • Partager sur Twitter
                          16 novembre 2018 à 21:55:32

                          Un cookie HTTP (cookie web, cookie de navigateur) est un petit ensemble de données qu'un serveur envoie au navigateur web de l'utilisateur. Le navigateur peut alors le stocker localement, puis le renvoyer à la prochaine requête vers le même serveur. Typiquement, cette méthode est utilisée par le serveur pour déterminer si deux requêtes proviennent du même navigateur — pour exemple pour garder un utilisateur connecté. Les cookies permettent de conserver de l'information en passant par le procotole HTTP qui est lui "sans état".

                          Les cookies sont stocké localement, sur ta machine par ton navigateur envoyés par le serveur 

                          src : https://developer.mozilla.org/fr/docs/Web/HTTP/Cookies

                          • Partager sur Facebook
                          • Partager sur Twitter

                          Problème enfantin $_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