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 :

Destruction


Sujet :

Langage PHP

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

    Informations forums :
    Inscription : Avril 2004
    Messages : 162
    Points : 60
    Points
    60
    Par défaut Destruction
    Bonjour,

    J'ai un espace web où mes visiteurs peuvent s'enregistrer. Pour ça mon site utilise les sessions.
    Je souhaite ajouter à mes visiteurs la possibilité de se déconnecter en utilisant la commande PHP session_destroy().
    Le problème est que j'obtiens l'erreur suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Warning: session_destroy(): Trying to destroy uninitialized session
    Pourtant j'appelle bien session_start()...

    Merci.

  2. #2
    Membre confirmé Avatar de dj-julio
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    745
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Décembre 2005
    Messages : 745
    Points : 625
    Points
    625
    Par défaut
    ton session_start(); tu le fais bien tout en haut de la page ?
    avant même les balises <html> ?

    es-tu sur que ta session existe ? as-tu testé ?

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    162
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 162
    Points : 60
    Points
    60
    Par défaut
    oui je le fais bien tout en haut de mon index.php (premier fichier) et avant le <html>

    je fais ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    // Démarrage de la session
      session_start();
      $expireTime = 10;
      session_set_cookie_params($expireTime);
    Dans le script, je définie une variable de session par cette commande (avant le <html> également) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $_SESSION['var_de_session'] = $_POST['var_de_session'];
    Et dans les autres scripts, je récupère les variables de session avec cette commande :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $var_de_session = $_SESSION['var_de_session'];

  4. #4
    Membre confirmé Avatar de dj-julio
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    745
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Décembre 2005
    Messages : 745
    Points : 625
    Points
    625
    Par défaut
    ok

    et ta fonction session_destroy(), tu l'appelles à quel endroit dans ta page ?

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    162
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 162
    Points : 60
    Points
    60
    Par défaut
    Dans un nouveau script.
    Faut-il faire un session_start() au début de chaque page ?

    Merci.

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

    Informations forums :
    Inscription : Avril 2004
    Messages : 162
    Points : 60
    Points
    60
    Par défaut
    Merci pour vos infos.
    Le problème était que j'avais oublie de mettre le session_start() au début de ma page.

    @+

  7. #7
    Membre confirmé Avatar de dj-julio
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    745
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Décembre 2005
    Messages : 745
    Points : 625
    Points
    625
    Par défaut
    si tu n'as pas de session_start() au début de ta page où tu as le session_destroy(), c'est normal que ça ne fonctionen pas.
    le session_start() doit être mit ) chaque fois que tu utiliseras tes valeurs stockées dans les $_SESSION['...']
    mais également dans la page de logout ;-)

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

Discussions similaires

  1. destruction d'une classe qui herite de CDialog
    Par philippe V dans le forum MFC
    Réponses: 2
    Dernier message: 03/02/2004, 17h39
  2. Réponses: 2
    Dernier message: 17/08/2003, 20h07
  3. Probleme de destruction
    Par Merluco dans le forum Langage
    Réponses: 6
    Dernier message: 30/06/2003, 13h51
  4. Création/Destruction
    Par HT dans le forum Langage
    Réponses: 5
    Dernier message: 22/05/2003, 17h04
  5. Réponses: 7
    Dernier message: 18/04/2003, 10h02

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