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 :

Problème avec $_SESSION.


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    121
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 121
    Points : 64
    Points
    64
    Par défaut Problème avec $_SESSION.
    Bonjour,

    Je un petit soucis avec l'utilisation de la variable de session $_SESSION.
    Je un script sur lequel je mets dans la variable de session $_SESSION une valeur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     
    session_start();
    $_SESSION["AN_MAIL"] = "abdc@yahoo.fr" ;
    Ensuite je voudrais récupérer et afficher cette valeur dans un autre script. Donc j'ai fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     
    session_start()
    echo $_SESSION["AN_MAIL"];
    A l'exécution du deuxième script j'obtient l'erreur suivant :
    "Undefined index AN_MAIL".

    Est-ce que vous pouvez m'aider svp ?

    Cordialement
    Dimitri.

  2. #2
    Membre éprouvé Avatar de vorace
    Homme Profil pro
    Développeur
    Inscrit en
    Août 2010
    Messages
    573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Août 2010
    Messages : 573
    Points : 915
    Points
    915
    Par défaut
    il manque un point virgule après session_start() :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    session_start();
    echo $_SESSION["AN_MAIL"];
    Développeur informatique contrarié...

  3. #3
    Expert éminent sénior

    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    5 381
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5 381
    Points : 10 410
    Points
    10 410
    Par défaut
    Et puis tu devrais toujours vérifier une variable avant de t'en servir ou de l'afficher. Par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $ses_AN_MAIL = isset($_SESSION["AN_MAIL"]) ? $_SESSION["AN_MAIL"] : 'valeur par défaut';
     
    echo $ses_AN_MAIL;
     
    //ou encore
    echo isset($_SESSION["AN_MAIL"])? $_SESSION["AN_MAIL"] : 'valeur par défaut';

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    121
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 121
    Points : 64
    Points
    64
    Par défaut
    Bonjour,

    Merci ABCIWEB pour votre réponse.
    Parcontre maintenant je vois que $_SESSION["AN_MAIL"] est vide au niveau du second script.
    Avez-vous une idée ?

    Merci
    Dimitri.

    Citation Envoyé par ABCIWEB Voir le message
    Et puis tu devrais toujours vérifier une variable avant de t'en servir ou de l'afficher. Par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $ses_AN_MAIL = isset($_SESSION["AN_MAIL"]) ? $_SESSION["AN_MAIL"] : 'valeur par défaut';
     
    echo $ses_AN_MAIL;
     
    //ou encore
    echo isset($_SESSION["AN_MAIL"])? $_SESSION["AN_MAIL"] : 'valeur par défaut';

  5. #5
    Expert éminent sénior

    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    5 381
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5 381
    Points : 10 410
    Points
    10 410
    Par défaut
    Ma réponse venait en complément de celle de vorace.
    As-tu corrigé l'erreur qu'il t'avait indiquée ?

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    121
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 121
    Points : 64
    Points
    64
    Par défaut
    Ah oui.
    C'est moi qui a mal écris mon code.
    Il y a un ";" dans les 2 commandes session_start().

    Dimitri.


    Citation Envoyé par ABCIWEB Voir le message
    Ma réponse venait en complément de celle de vorace.
    As-tu corrigé l'erreur qu'il t'avait indiquée ?

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    121
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 121
    Points : 64
    Points
    64
    Par défaut
    Bonjour à tous,

    Finalement j'ai trouvé d'ou venait mon problème.
    J'avais mis la commande "session_start()" dans le mauvais fichier.
    Je l'ai mis au bon endroit et maintenant ça marche bien.

    Merci pour votre aide.

    Dimitri.

  8. #8
    Expert éminent sénior

    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    5 381
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5 381
    Points : 10 410
    Points
    10 410
    Par défaut
    La règle est simple : il faut mettre session_start() dans toutes les pages dans lesquelles tu veux utiliser des variables de session

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] problème avec $_SESSION[numrows]
    Par edwithenwisdom dans le forum PHP & Base de données
    Réponses: 13
    Dernier message: 27/04/2012, 08h56
  2. [MySQL] Problème avec les $_SESSION
    Par Clochette44 dans le forum PHP & Base de données
    Réponses: 12
    Dernier message: 23/03/2012, 18h12
  3. problème avec $_session
    Par gpsevasion dans le forum Langage
    Réponses: 2
    Dernier message: 22/01/2007, 12h05
  4. Problème avec la mémoire virtuelle
    Par Anonymous dans le forum CORBA
    Réponses: 13
    Dernier message: 16/04/2002, 16h10

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