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 :

pb avec espace membres


Sujet :

Langage PHP

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 6
    Points : 3
    Points
    3
    Par défaut pb avec espace membres
    bonjour
    je ne sais pas si je suis pas le bon forum pour ce message sinon veuillez le déplacer.
    je debute en php et je suis en train de faire un espace membres.Mon pb est que quand je me logue je retombe sur la page index.php au lieu de membres.php et si je vais dans membres.php en mettnt l'adresse directement ça me dit que je dois me connecter pour pouvoir acceder à la page,alors que je suis deja connecter.
    voici mon code de connexion et de ma page membres.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
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    <?php
    //Si la variable $_POST['connexion'] (bouton submit du formulaire) et la variable $_SESSION['logged'] vaut false (déconnecté) existent.
    if (isset($_POST['connexion']) && $_SESSION['logged'] === false)
    {
            //Vérification des autres variables.
            if (isset($_POST['pseudo'],$_POST['mot_passe']) && !empty($_POST['pseudo']) && !empty($_POST['mot_passe']))
            {
                    //Vérification du pseudo.
                    $pseudo = htmlspecialchars($_POST['pseudo']);
                    $mot_passe = htmlspecialchars($_POST['mot_passe']);
     
                    //Requête comptant le nombre de pseudos $_POST['pseudo']
                    $sql = mysql_query("SELECT COUNT(*) AS nb_pseudo FROM membres WHERE pseudo='".$pseudo."'");
     
                    //Si le pseudo existe.
                    if (mysql_result($sql,0,'nb_pseudo') == 1)
                    {
                            //Vérification du mot de passe
                            //Information sur le compte du membre.
                            $sql_infos = mysql_query("SELECT id, mot_passe, confirmation FROM membres WHERE pseudo='".$pseudo."'");
                            $donnees = mysql_fetch_array($sql_infos);
     
                            //Hashage du mot de passe.
                            $mot_passe_hash = md5($mot_passe);
     
                            //Comparaison du mot de passe.
                            if ($mot_passe_hash == $donnees['mot_passe'])
                            {
                                    //On vérifie que le compte est confirmé.
                                    //Si $donnees['confirmation'] vaut 1.
                                    if ($donnees['confirmation'] == 1)
                                    {
                                            if (isset($_POST['souvenir']) && $_POST['souvenir'] == 'on')
                                            {
                                                //Temps d'expiration des cookies (1 an).
                                                $expire = time() + 3600 * 24 * 365;
     
                                                setcookie('pseudo', $pseudo, $expire);
                                                setcookie('mot_passe', $mot_passe_hash, $expire);
                                            }
     
                                            //Tout est bon, on connecte le membre.
                                            $_SESSION['logged'] = true;
     
                                            //Création de 2 variables de session, contenant des informations sur le membre.
                                            $_SESSION['id'] = $donnees['id']; //Id du membre.
                                            $_SESSION['pseudo'] = $pseudo; //Pseudo du membre.
     
                                            //Redirection vers la page membre.
                                            header("Location: membres.php");
                                    }
                                    else
                                            echo 'Erreur : le compte n\'est pas confirmé !';
                            }
                            else
                                    echo 'Erreur : le mot de passe est incorrect !';
                    }
                    else
                            echo 'Erreur : le pseudo n\'existe pas !';
            }
            else
                    echo 'Erreur : veuillez remplir tous les champs !';
    }
    ?>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <?php
    //Ne pas oublier de mettre le session_start()
    session_start();
     
    //On vérifie que le membre est connecté.
    if (isset($_SESSION['logged']) && $_SESSION['logged'] === true)
    {
       //Mettez ici votre code xhtml (et php)
       //Exemple : affichage du lien de déconnection et du pseudo.
       echo 'Bonjour '.$_SESSION['pseudo'].'<br/><a href="deconnexion.php">Déconnexion</a>';
    }
    else
       echo 'Erreur : vous devez être connecté pour accéder à cette page !<br /> Allez <a href="index.php">ici</a> pour vous connecter.';
    pouvez vous e dire d'ou vient l'erreur?

  2. #2
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Je ne vois pas de session_start dans ton premier script... normal ?

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 6
    Points : 3
    Points
    3
    Par défaut
    oui j'en ai rajouté une entre tps mais ça change rien,j'ai tjs le meme pb

  4. #4
    Membre habitué Avatar de Akramweb
    Homme Profil pro
    Webmaster
    Inscrit en
    Avril 2005
    Messages
    227
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Webmaster
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2005
    Messages : 227
    Points : 197
    Points
    197
    Par défaut
    bonsoir,
    je ne vois pas de declaration de variables dans ton 2eme code

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 6
    Points : 3
    Points
    3
    Par défaut
    quelle declaration?

  6. #6
    Membre habitué Avatar de Akramweb
    Homme Profil pro
    Webmaster
    Inscrit en
    Avril 2005
    Messages
    227
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Webmaster
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2005
    Messages : 227
    Points : 197
    Points
    197
    Par défaut
    ok si tu veux jeter un coup d'oeil sur mon code.
    si tu veux l'utiliser il te suffit de modifier le nom de la base de données.
    Fichiers attachés Fichiers attachés

  7. #7
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 6
    Points : 3
    Points
    3
    Par défaut
    oohh merci bcp je pense que ça va bien m'aider

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

Discussions similaires

  1. [Blog] Création avec espace membre
    Par danydan01 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 0
    Dernier message: 13/05/2011, 12h25
  2. [XHTML] comment creer un espace membre avec xhtml ?
    Par dax80 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 8
    Dernier message: 09/08/2007, 01h31
  3. Réponses: 4
    Dernier message: 20/02/2007, 05h03
  4. [Choix] Recherche Script type portail, avec espace administration et espace membre
    Par un_passant dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 4
    Dernier message: 08/08/2006, 12h56
  5. [Tableaux] problème avec espace membre
    Par ph_anrys dans le forum Langage
    Réponses: 10
    Dernier message: 01/03/2006, 18h26

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