Code de connexion correct??

Bonjour,
voila je me demandais si mon code php pouvait permettre a un membre de se connecter.

Sinon , pourriez vous me donnez une piste ??
<?php

taratata connexion ici :p

$pseudo = $_POST['pseudo'];
$pass = md5($_POST['pass']);

$req = mysql_query('SELECT * FROM membres WHERE pseudo ='.$pseudo.'');

if ($req == 0)
{
echo '<p>utilisateur inconnue</p>';
}

else
{
if($pseudo == $pass)
{
echo 'connexion reussie';
}
else
{
echo 'votre mot de passe est incorrect ou bien inconnu';
}
}
?>


en fait , je me demande si la premiere condition est juste...

5 réponses

  1. si tu parles de celle la je pense que non

    if ($req == 0)
    {
    echo '<p>utilisateur inconnue</p>';
    }

    par contre tu pourrais faire un truc de ce genre :

    if (mysql_num_rows($req) > 0)
    {
         echo '<p>utilisateur inconnue</p>';
    }
    1. ben bizarrement , il me met quand j'essaie de me connecter , utilisateur inconnu...
      1. <?php 
        
        taratata connexion ici :p 
        
        $pseudo = $_POST['pseudo']; 
        $pass = md5($_POST['pass']); 
        
        $req = mysql_query("SELECT * FROM 'membres' WHERE 'pseudo' ='$pseudo'"); 
        $nb = mysql_num_rows($req); 
        
        if ($req <> 1) 
        { 
        echo '<p>utilisateur inconnue</p>'; 
        } 
        
        else 
        { 
        $save = mysql_fetch_array($req); 
        
        if($pass == $save['pass']) //Ou le nom de ton champ dans ta BDD! 
        { 
        echo 'connexion reussie'; 
        } 
        else 
        { 
        echo 'votre mot de passe est incorrect ou bien inconnu'; 
        } 
        } 
        ?>


        Donc une petite explication...

        Tu executes ta requete, et tu récupères le nombre de résultat. Si ce nombre est plus grand ou plus petit que 1, c'est que la requete a échoué...

        Ensuite, tu mets tous les résultats de ta requete (donc de la seule ligne retournée), dans la variable $save qui devient un tableau pour lequel tu peux accéder aux champs par leur nom interne à la BDD... Et là, tu controle si le password correspond... S'il correspond, c'est Ok, sinon, non... ^^
        1. bizarrement ca marche toujours pas... j'ai copié coller ton code ( et j'ai remis ma connexion )...