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 :

php et Sessions


Sujet :

Langage PHP

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2010
    Messages
    119
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2010
    Messages : 119
    Points : 39
    Points
    39
    Par défaut php et Sessions
    Bonjour à tous,

    je souhaite créer un site dans lequel pourrons se logger des utilisateurs répertoriés dans une base de données PGSQL (nom/passwd).

    J'ai créé une page formulaire de login, qui envoie en $_POST, les données 'pseudo' et 'password' à mon index.
    Dans mon index, je cherche si le couple 'pseudo/password' existe dans ma BDD, si oui, j'attribue 'pseudo' à ma variable $_SESSION['login'], et ensuite je fais des traitement dans ma page selon que oui ou non cette variable et définie et non vide.

    Ce qui me donne le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
     
    ini_set('display_errors','On');
    $dbconn = pg_connect($conn_string);
    if(!$dbconn){
        echo "Erreur de connexion a la base de donnees";
        exit;
    }
    session_start();
    //$_SESSION['login'] ='';
    //Si des donnees non vides sont transmises depuis la page de login
    if((isset($_POST['pseudo'])) && (isset($_POST['password'])) && (!empty($_POST['pseudo']))&& (!empty($_POST['password']))){
        //Je cherche dans la bdd si l'utilisateur existe
        $result = pg_prepare($dbconn, "search_user", 'SELECT password FROM users WHERE ident= $1');
        $result = pg_execute($dbconn, "search_user", array($_POST['pseudo']));
        $data = pg_fetch_row($result);
        //S'il existe je donne la valeur de "pseudo" à $_SESSION['login']
        if($data[0]==($_POST['password'])){
    	$_SESSION['login']= $_POST['pseudo'];
    	echo 'utilisateur reconnu';
        } 
    }
    Mon problême :
    Si un utilisateur se logg via la page de login, il est renvoyé vers la page index et est loggé. Mais si je rafraichis ma page index, celui-ci n'est plus loggé...

    Comment faire pour que celui-ci reste loggé lorsque je rafraichis ma page? (donc pour ne pas que ma variable $_SESSION['login'] soit effacée?

    Merci à tous d'avance!

  2. #2
    Membre averti

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    242
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 242
    Points : 354
    Points
    354
    Par défaut
    Pourquoi ta variable de session est-elle effacée ? Rien dans ton code ne nous montre cela.

    Elle n'a pas à priori pas non plus de raison de l'être sur la page d'index.
    Pour tester si l'utilisateur est loggé, tu as juste à faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    if (isset($_SESSION['login']))  {
       // utilisateur authentifié
    }

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2010
    Messages
    119
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2010
    Messages : 119
    Points : 39
    Points
    39
    Par défaut
    Bon sang mais c'est bien sur!

    Merci beaucoup!

    Désolé je débute, alors je suis vite perdu dans mon code ><

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

Discussions similaires

  1. [MySQL] php variable session
    Par bebeflood dans le forum PHP & Base de données
    Réponses: 9
    Dernier message: 12/03/2013, 14h48
  2. PHP et Session
    Par Bizoo dans le forum Langage
    Réponses: 6
    Dernier message: 27/03/2009, 10h31
  3. Protection de page web PHP - Probleme Sessions
    Par neoboy dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 5
    Dernier message: 17/09/2007, 14h05
  4. [PHP-JS] Session, Javascript et Internet Explorer
    Par EggY14 dans le forum Langage
    Réponses: 4
    Dernier message: 26/07/2006, 12h46
  5. les sessions PHP
    Par smh_master dans le forum Langage
    Réponses: 4
    Dernier message: 31/08/2005, 14h13

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