Page 1 sur 1

Difficulté avec "AND" dans une requete SQL

Posté : 19 août 2015, 22:51
par tgv2000fr
Bonjour à tous,


J'ai des difficultés avec une requête sql où j'ai besoin d'avoir 2 condition pour WHERE

Il s'agit de récupérer la ligne qui correspond à un email et un password :

J'ai essayé ceci :
$info_compte = $bdd->prepare('SELECT * FROM membres WHERE email=:email AND password=password');
    // On execute la requête
    $info_compte->execute(array(
        'email' => $email
        'password' => $password
        ))or die(print_r($info_compte->errorInfo())); // On traque l'erreur s'il y en a une
 
    $info_compte = $info_compte->fetch();
Mais ça me donne une page blanche (erreur php désactivée sur mon serveur)


J'ai essayé également ceci :
$info_compte = $bdd->prepare('SELECT * FROM membres WHERE email=:email AND password='.$password.'');
    // On execute la requête
    $info_compte->execute(array(
        'email' => $email
        ))or die(print_r($info_compte->errorInfo())); // On traque l'erreur s'il y en a une
 
    $info_compte = $info_compte->fetch();
Et là avec var_dump() ça me donne ceci :

Array ( [0] => 42S22 [1] => 1054 [2] => Unknown column 'b3bf7e6dc8eebc6f57cda05f2580b8a6cbe5dcd7' in 'where clause' ) 1
Ps : Le pass est haché avec sha1() et il correspond bien à celui qui est dans la ligne visée


Merci à vous

Re: Difficulté avec "AND" dans une requete SQL

Posté : 19 août 2015, 23:27
par or 1
$info_compte = $bdd->prepare('SELECT * FROM membres WHERE email=:email AND password=:password');
ainsi, il y a bien 2 paramètres à remplir et non un seul.

Re: Difficulté avec "AND" dans une requete SQL

Posté : 20 août 2015, 08:42
par tgv2000fr
Oui dsl il s'agit d'une faute de de frappe, j'ai toujours le même problème :)

Re: Difficulté avec "AND" dans une requete SQL

Posté : 20 août 2015, 11:27
par xTG
As-tu une erreur (as-tu activé les erreurs PDO ?) ?
Car la requête proposée par or1 est correcte.

Re: Difficulté avec "AND" dans une requete SQL

Posté : 20 août 2015, 15:09
par Maitrepylos
password étanr une fonction en MySQL/MAriaDB, as tu essayé d’échapper ta colonne

Code : Tout sélectionner

$info_compte = $bdd->prepare('SELECT * FROM membres WHERE email=:email AND `password`=:password');

Re: Difficulté avec "AND" dans une requete SQL

Posté : 21 août 2015, 11:38
par tgv2000fr
Je vais voir si me erreur PDO sont activée

Et je teste ça pylos

[Résolu] Difficulté avec "AND" dans une requete SQL

Posté : 22 août 2015, 08:40
par tgv2000fr
Résolu, il s'agissait bien de password fonction MySQL/MAriaDB

J'ai échapper la colonne.

Merci à vous et merci pylos