Probleme de connection espace membre

mecapom Messages postés 29 Date d'inscription dimanche 4 mars 2007 Statut Membre Dernière intervention 27 août 2007 - 24 mars 2007 à 17:35
mecapom Messages postés 29 Date d'inscription dimanche 4 mars 2007 Statut Membre Dernière intervention 27 août 2007 - 25 mars 2007 à 20:39
Bonjour a tous j'ai un petit probleme avec la connection de mon espace membre de mon site
http://www.freeeuro.fr
. Lorsque je me connecte avec mon pc tout fonctionne bien mais si j'essaye avec un autre pc ou si un membre veut se connecter ca ne fonctionne pas; il entre  son pseudo et mot de passe il valide et il es rediriger sur la page membre et la il y a le message comme quoi il n'est pas connecter.. voici ma page accueil ou il y a le formulaires de connections

<?php
//Démarrage de la session (à mettre avant tout code xhtml)
session_start();


//Si la variable $_SESSION['logged'] n'existe pas on la créée.
if (!isset($_SESSION['logged'])) $_SESSION['logged'] = false;


//Inclusion du fichier contenant les identifiants de connexion à la base de données.
require("config.inc.php");


//Connexion à la base de données.
mysql_connect($host, $username, $password);
mysql_select_db($bdd_name);
if ($_SESSION['logged'] === false)
{
   if (isset($_COOKIE['pseudo'], $_COOKIE['mot_passe']))
   {
      //Vérification du pseudo.
      $pseudo = htmlspecialchars($_COOKIE['pseudo']);
      $mot_passe = htmlspecialchars($_COOKIE['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);
                      
             //Comparaison du mot de passe et vérification que le compte est confirmé.             if ($mot_passe $donnees['mot_passe'] && $donnees['confirmation'] 1)
             {
                   //Tout est bon, on connecte le membre.
                   $_SESSION['logged'] = true;
                  
                   //Création de 2 variables de sessio, 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");
              }
        }
   }
}
//Ici on gérera le formulaire de connexion.
//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 (!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 !';
}
?>
<html>
<head>
<title>Accueil</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<STYLE type="text/css">
A:link {color: #36383C;text-decoration:none;font-weight: bold;} A:visited {color: #36383C;text-decoration:none;font-weight: bold;} A:hover {color: #566177;text-decoration:underline;font-weight: bold;}
A.sur_fonce:link { color: #DCDCDD;text-decoration:none;font-weight: bold;} A.sur_fonce:visited {color: #DCDCDD;text-decoration:none;font-weight: bold;} A.sur_fonce:hover {color: #FFFFFF;text-decoration:underline;font-weight: bold;}


body,td  {color: #000000; font-variant: normal; font-size: 10px; font-family: Verdana, Arial, Helvetica }
.titre {color: #36383C; font-size: 10px; font-family: Verdana, Arial, Helvetica  ; font-weight: bold}


b { font-weight: bold }
</STYLE>
</head>



  ----

        
    Espace Membre,
  
  ----

     <form method="POST" action="accueil.php">
<label for="pseudo">Pseudo :
</label>

<label for="mot_passe">Mot de passe :

</label>

<label for="souvenir">Connexion Auto ?</label>

</form>   ,
  
  ----

        Inscrivez vous
    Gratuitement

    ,
  
  ----

        Gagnez
    des points en effectuant des achats chez plus de 200 sites
    partenaires.,
  
  ----

                            
    Gagnez des points avec nos freeactions

    ,
  

  ----

      ,
  

  ----

    
    
    Achat en lignes,
    &nbsp;,
    
    FreeActions,
  
  ----

        
    
     : 2.5%
    ou 1250 fpts

    
    &nbsp; : 350 fpts

    &nbsp;: 2%

    ,
    
    :
    17.5 Fpts
    
    : 15 fpts

    
     : 15 fpts

    ,
  

  ----

      ,
  

  ----

        
                       
    Économisez&nbsp; de l'argent grâce a nos partenaires. Recevez
    une partie du montant de vos achat en freepoints puis échanger
    les dans la boutique . Participer au freeactions et gagner
    toujours plus de freepoints. Découvrez les offres
    promotionnelles de nos 200 partenaires et faites des achats
    malin grâce au bon de réductions...,
  
  

    
</html>
<?php
//Déconnection de la base de données.
mysql_close();
?>
Et voici la page membres
<?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'].'
[deconnexion.php Déconnexion]';
}
else
   echo 'Erreur : vous devez être connecté pour accéder à cette page !
Allez [index.php ici] pour vous connecter.';
?>
J'ai recuperer se script sur http://www.siteduzero.com/tuto-3-3358-1-un-espace-membres-simple.html 
Aidez moi merci

1 réponse

mecapom Messages postés 29 Date d'inscription dimanche 4 mars 2007 Statut Membre Dernière intervention 27 août 2007
25 mars 2007 à 20:39
Salut encore moi je pense que mon soucis provient des cookies car si grace a un site je fais un controle pour voir si l'internautes accepte les cookies ca marche de suite derriere et en revanche si on ouvre pas se script ca ne fonctionne pas;......
desoler pour les fautes......
0
Rejoignez-nous