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 problème de session


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Architecte technique
    Inscrit en
    Février 2004
    Messages
    477
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : Service public

    Informations forums :
    Inscription : Février 2004
    Messages : 477
    Par défaut PHP problème de session
    Bonjour,

    Je viens de remarquer un problème avec mon site web. Je suis chez Free et j'utilise les session pour sauvegarder des informations sur les utilisateurs.

    Chez moi en utilisant easyphp 1.8 tout fonctionne. Mais chez free il y a un problème. Je m'explique:

    J'ai une page qui permet de s'authentifier (login + mdp). Lorsque l'utilisateur se connecte je fais une vérification par rapport à la base de données. Si l'utilisateur est bien enregistré je sauvegarde son login dans une variable de session.

    De la automatiquement l'utilisateur est redirigé vers la page d'accueil qui écrit bienvenue "nomLogin". Jusque la tout fonctionne encore chez free.

    Le problème survient maintenant, l'utilisateur souhaite voir les dernières news du site et clique sur le lien. Les news s'affichent mais je récupère un login totalement faux. En occurence, celui d'un autre utilisateur.

    Je ne comprends pas du tout surtout que se login je ne le tape jamais alors si vous pouviez m'eclaircir!

    A noter que dans chaque page ou j'utilise des variables de sessions, j'effectue un session_start(). Je récupère ma variable en faisant $_SESSION["login"];

    Merci d'avance!

  2. #2
    Membre éclairé
    Inscrit en
    Avril 2006
    Messages
    82
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 82
    Par défaut
    alors la il me fodrait un ptit bout de ton code pour pouvoir regarder de facon un peu plus clair...

  3. #3
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Août 2003
    Messages
    235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2003
    Messages : 235
    Par défaut
    as-tu créé ton répertoiren sessions chez Free ?

  4. #4
    Membre éclairé
    Inscrit en
    Avril 2006
    Messages
    82
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 82
    Par défaut
    euh... ce que je trouve bizarre c'est que tu te retrouve avec un autre nom ... qe celui que t'as rentré.

    Pour ma part tu dois effectuer dans ton code à un moment donné un petite bourde qui fait que tu récupère le mauvais nom mais la j'ais pas assez d'infos sur ce que tu as codé pour te renseigné je vois juste que deja tu sais utiliser une SESSION or ce que ej voudrais c'est plutot voir l'endroi ou tu as fais l'erreur

  5. #5
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Août 2003
    Messages
    235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2003
    Messages : 235
    Par défaut
    Ton test est faux, tu mets dans ta variable session quand l'utilisateru n'a rien entré.

  6. #6
    Membre éclairé
    Homme Profil pro
    Architecte technique
    Inscrit en
    Février 2004
    Messages
    477
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : Service public

    Informations forums :
    Inscription : Février 2004
    Messages : 477
    Par défaut
    Alors la c'est ce que j'ai dans mon script php une fois que l'utilisateur a valider le formulaire d'authentification.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    //Ouverture de la session
    session_start();     
     
    // On interdit PHP d'afficher des messages d'erreur
    error_reporting(0);
     
    ...Connexion a la BD et vérification
     
     //Sauvegarde du login dans la variable de session
    $_SESSION["login"]  = $_POST["login"];
    ça c'est ce que j'ai lorsque l'authentification a fonctionné:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    //Ouverture de la session
    session_start();
     
    $login = $_SESSION["login"];
     
    echo "<p>
    Bienvenue $login <br />
    </p>
    et ça c'est ce que j'ai sur la page qui pose problème:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <?
    session_start();
     
    echo $_SESSION["login"];
    Ici je me retrouve avec un mauvais login, celui d'un autre utilisateur.

  7. #7
    Membre éclairé
    Homme Profil pro
    Architecte technique
    Inscrit en
    Février 2004
    Messages
    477
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : Service public

    Informations forums :
    Inscription : Février 2004
    Messages : 477
    Par défaut
    J'ai bin créer mon dossier sessions chez free!

  8. #8
    Membre éclairé
    Inscrit en
    Avril 2006
    Messages
    82
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 82
    Par défaut
    teste l'existence de tes $_POST avec

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(!empty($_POST['nom'])){
    Parce que j'ai un doute sur ce que tu obtien et fais afficher ta variable $_POST ...

  9. #9
    Membre éclairé
    Homme Profil pro
    Architecte technique
    Inscrit en
    Février 2004
    Messages
    477
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : Service public

    Informations forums :
    Inscription : Février 2004
    Messages : 477
    Par défaut
    Je viens de faire un test sur le post de login! C'est bon le login est bien réceptionné avant le test d'authentification.

  10. #10
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Août 2003
    Messages
    235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2003
    Messages : 235
    Par défaut
    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
    //Ouverture de la session
    session_start();     
     
    // On interdit PHP d'afficher des messages d'erreur
    error_reporting(0);
     
    // Verification du formulaire
    if($_POST["login"] != null && $_POST["mdp"] != null)
    {       
            ...Connexion a la BD et vérification
     
           //Sauvegarde du login dans la variable de session
    unset($_SESSION["login"]);
    $_SESSION["login"]  = $_POST["login"];
    }

  11. #11
    Membre éclairé
    Inscrit en
    Avril 2006
    Messages
    82
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 82
    Par défaut
    ou alors :

    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
    //Ouverture de la session
    session_start();     
     
    // On interdit PHP d'afficher des messages d'erreur
    error_reporting(0);
     
    // Verification du formulaire
    if( !empty($_POST["login"]) && !empty($_POST["mdp"]) )
    {       
            ...Connexion a la BD et vérification
     
           //Sauvegarde du login dans la variable de session
    unset($_SESSION["login"]);
    $_SESSION["login"]  = $_POST["login"];
    }
    [/quote]

Discussions similaires

  1. [MySQL] problème de session php
    Par carmen256 dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 16/04/2009, 20h39
  2. [AJAX] AJAX & Session php problème.
    Par prosciuto dans le forum AJAX
    Réponses: 9
    Dernier message: 09/04/2009, 12h17
  3. Problème de SESSION avec les "pseudo-frame" PHP
    Par kergad dans le forum Langage
    Réponses: 10
    Dernier message: 24/05/2008, 01h12
  4. problème PHP avec les sessions
    Par soufian2290 dans le forum Langage
    Réponses: 2
    Dernier message: 24/01/2007, 18h00
  5. Problème de sessions PHP/SQL
    Par Mousk dans le forum Langage
    Réponses: 6
    Dernier message: 11/08/2006, 15h02

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