Probleme connexion php

max1395 -  
irem Messages postés 164 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour ,
Voila j'ai un probleme , quand je me connecte sur mon site celui ci m'indique que c'est le mot de passe et faux alors que c'est bon .... Pouvez vous regardé le code et me dire ce qui ne vas pas ? merci

<?php
// Connexion au serveur
mysql_connect('localhost','root','') or die("erreur de connexion au serveur");

mysql_select_db('site') or die("erreur de connexion a la base de donnees");

if (empty($_POST['pseudo']) || empty($_POST['password']) ) //Oublie d'un champ
{
$message = '<p>une erreur s est produite pendant votre identification.
 Vous devez remplir tous les champs
Cliquez <a href="./connexion.php">ici</a> pour revenir</p>';
}
else
{
if (isset($_SESSION['pseudo']))
{
$message ='<p>Désolé mais vous ne pouvez
pas accéder à cette page</p>';
}
else // Autorisation ok : il reste à voir le mot de passe
{
$pseudo = $_POST['pseudo'];
$password = $_POST['password'];
$requete1 = mysql_query(' SELECT password 
FROM membres WHERE pseudo = "'.$pseudo.'" ')
or die (mysql_error());
$data1 = mysql_fetch_assoc($requete1);
     
if ($pseudo == ($password)) // Acces OK !
           {
        
                   $_SESSION['pseudo'] = $pseudo;
                   $_SESSION['id'] = $data1['id'];
        
                   $message = '<p>Bienvenue '.$_SESSION['pseudo'].',
                   vous êtes maintenant connecté!</p>
                   <p>Cliquez <a href="./index.php">ici</a>
                   pour revenir à la page d accueil</p>';
        
           }
           else // Acces pas OK !
            {
                   $message = '<p>Une erreur s est produite
                   pendant votre identification.
                   Le mot de passe ou le pseudo entré n est pas correcte.
                  Cliquez <a href="./connexion.php">ici</a>
                   pour revenir à la page précédente
                   <br /><br />
                   Cliquez <a href="./index.php">ici</a>
                   pour revenir à la page d accueil</p>';
             }
             }
   }
   //Ici seulement on affiche la page
   ?>
   <div id="banniere"></div>

   <div id="corps_forum">
   <?php
  echo $message;
   ?>
   </div>
   </body>
   </html>
   <?php
   if (isset($_POST['souvenir']))
  {
   $expire = time() + 365*24*3600;
   setcookie('pseudo', $_SESSION['pseudo'], $expire);
   }
  
  ?>

1 réponse

irem Messages postés 164 Date d'inscription   Statut Membre Dernière intervention   99
 
Bonjour, en substance la ligne :
if ($pseudo == ($password)) // Acces OK !


donne que le système vérifie que l'utilisateur (Pseudo) existe dans la base et que le mot de passe est équivalent au pseudo

il faudrait plutôt

if ($pseudo == $data1['password']) // Acces OK !

Cordialement Irem
0