Bonjours,
voilà donc j'ai un problème, je suit le tutoriel de la connexion php/mysql.
voici mon code :

<?php
    session_start();

    if(isset($_POST) && !empty($_POST'login']) && !empty($_POST'pass'])){
        extract($_POST);
        $pass = sha1($pass);

        require ("../data/config.php");
        mysql_connect(DB_HOST,DB_LOGIN,DB_PASS);
        mysql_select_db(DB_BDD);

        $sql="SELECT id FROM users WHERE login='$login' AND pass='$pass'";
        $req = mysql_query($sql) or die('Erreur SQL !');
            if (mysql_num_rows($req)>0){
            header('location: unepage.php');
        }
        else{
            echo "Mauvais Identifiants!";
        }
    }
?>

Php me retourne ma propre erreur : "Mauvais Identifiants!" !
A votre avis, d'où vient le problème ?

5 réponses


wallerand
Auteur
Réponse acceptée

Non, enfaite c'est qu'il ne faut pas encrypter le mot de passe s'il y est déjà encrypter dans la base de donnée ...
<?php
session_start();

if(isset($_POST) && !emptyempty($_POST'login']) && !emptyempty($_POST'pass'])){
extract($_POST);

require ("../data/config.php");
mysql_connect(DB_HOST,DB_LOGIN,DB_PASS);
mysql_select_db(DB_BDD);

$sql="SELECT id FROM users WHERE login='$login' AND pass='$pass'";
$req = mysql_query($sql) or die('Erreur SQL !');
if (mysql_num_rows($req)>0){
header('location: unepage.php');
}
else{
echo "Mauvais Identifiants!";
}
}
?>

Tu as écrit 2 fois empty dans ton If :/
Relis ton code avant de venir poster ici ....

désoler sa a du être en copiant car dans mon code c'est : if(isset($_POST) && !empty($_POST'login']) && !empty($_POST'pass'])) et j'suis pas con quand même

Escuse moi, mais tu sais sur certain type de forum les gens post vraiment pour rien. Vide le if, et met juste une variable genre login, et test pour voir.
Vérifie que ton formulaire soit bien nommer aussi, que les nom soit bien attribué au variable que tu souhaite récupéré

<?php     
    session_start();   

    if(isset($_POST'login'],$_POST'pass']) && $_POST'login'] != NULL && $_POST'pass'] != NULL){   
        extract($_POST);   
        $pass = sha1($pass);   

        require ("../data/config.php");   
        mysql_connect(DB_HOST,DB_LOGIN,DB_PASS);   
        mysql_select_db(DB_BDD);   

        $sql="SELECT id FROM users WHERE login='$login' AND pass='$pass'";   
        $req = mysql_query($sql) or die('Erreur SQL !');   
            if (mysql_num_rows($req)>0){   
            header('location: unepage.php');   
        }   
        else{   
            echo "Mauvais Identifiants!";   
        }   
    }

Si tu utilise les fonctions header dans tes pages n'oublie pas de démarrer la tamporisation avec ob_start();