IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Perte de variable de session


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 7
    Points : 7
    Points
    7
    Par défaut Perte de variable de session
    Bonjour,

    J’ai un code du type dans mon index.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    <?php session_start(); ?>
    <html>
    ..
    <body>
    <div>
    <?php include('menu.php')>
    </div>
     
    <div>
    ....
    </div>
    ...
    </html>
    Dans menu.php j'ai quelque chose du genre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    <form method="post" action="connect.php">
    <input type="text" name="login" />
    <input type="password" name="pwd" />
    //...
    </form>
    <a href="index.php">acceuil</a>
    <?php
    if (isset($_SESSION['login'])
      echo $_SESSION['login'];
    ?>

    Enfin dans connect.php j'ai quelque chose comme :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <? php
    session_start();
    extract($_POST);
    //des tests sur la bdd
    $_SESSION['login']=$login;
    ?>
    Bref, lorsque je me connecte la première fois, je vois bien apparaitre mon login, et si je reclique sur le lien accueil qui redirige vers la même page, je perds mon login...

    Du coup j'ai rajouté au début de index.php:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <?php session_start();
    echo session_id();
    echo $_SESSION['login'];
     ?>
    Je charge la page la première fois, normal, j'ai une erreur sur login non définie
    Je me connecte, j'ai le même session_id et le login apparaît
    Je clic sur le lien accueil de mon menu, j'ai le même session_id, mais login n'est plus définie...

    Je suis en train de devenir dingue....

    Il y a bien sur la solution des cookies (que j'implémente par ailleurs), mais bon j'aimerai bien comprendre le problème quand même...

    Si quelqu'un a une solution ou une explication alors je suis preneur !!


    Merci.

  2. #2
    OPi
    OPi est déconnecté
    Membre actif
    Avatar de OPi
    Homme Profil pro
    en recherche d'emploi
    Inscrit en
    Août 2005
    Messages
    74
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Belgique

    Informations professionnelles :
    Activité : en recherche d'emploi
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2005
    Messages : 74
    Points : 245
    Points
    245
    Par défaut Corrections préalables
    Dans index.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php include('menu.php')>
    doit être corrigé par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php include('menu.php');?>
    Dans menu.php il manque un submit dans le form
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="submit" value="Envoyer" />
    sinon rien n'est envoyé et connect.php n'est jamais exécuté.

    Puis
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (isset($_SESSION['login'])
    doit être corrigé par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if ( isset($_SESSION['login']) )
    Et enfin dans ce connect.php
    doit être corrigé par
    DragonSoft DS (informatique) — Johnny Five JF (textes) — Olivier Pirson OPi (mathématiques)
    OPiCitationshttps://bitbucket.org/OPiMedia

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 7
    Points : 7
    Points
    7
    Par défaut
    Bonjour,
    dslé pour la réponse tardive, vacances à l'étranger...

    Hormis le ";" derrière le include, mon code réel est correct.
    Cela ne change malheureusement rien...

Discussions similaires

  1. Perte de variables de session + projets
    Par papawemba dans le forum C#
    Réponses: 2
    Dernier message: 19/06/2007, 17h55
  2. Réponses: 5
    Dernier message: 01/05/2007, 14h22
  3. Bloquer page précédente car perte de variable de session
    Par phoenix3011 dans le forum Langage
    Réponses: 2
    Dernier message: 19/08/2006, 17h39
  4. Perte des variables de sessions
    Par Dayom dans le forum Langage
    Réponses: 12
    Dernier message: 17/07/2006, 11h04
  5. Réponses: 32
    Dernier message: 20/03/2006, 14h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo