Warning: PDOStatement::execute(): SQLSTATE[42000]:

Fermé
neoh01 Messages postés 1 Date d'inscription mardi 17 janvier 2017 Statut Membre Dernière intervention 17 janvier 2017 - 17 janv. 2017 à 17:17
jordane45 Messages postés 38366 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 1 janvier 2025 - 18 janv. 2017 à 08:38
Bonjour,
j-ai un erreur dans mon code ,ais je n'arrive pas a la trouver:

voici l'erreur:
Warning: PDOStatement::execute(): SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '= 'fmelo@yopmail.com' OR usr_email = 'fmelo@yopmail.com' LIMIT 1' at line 1 in C:\xampp\htdocs\KMS\W\Model\UsersModel.php on line 41

et voici mon code:
public function getUserByUsernameOrEmail($usernameOrEmail)
{

$app = getApp();

$sql = 'SELECT * FROM ' . $this->table .
' WHERE ' . $app->getConfig('security_username_property') . ' = :username' .
' OR ' . $app->getConfig('security_email_property') . ' = :email LIMIT 1';

$dbh = ConnectionModel::getDbh();
$sth = $dbh->prepare($sql);
$sth->bindValue(':username', $usernameOrEmail);
$sth->bindValue(':email', $usernameOrEmail);

if($sth->execute()){ // line41
$foundUser = $sth->fetch();
if($foundUser){
return $foundUser;
}
}

return false;
}



A voir également:

1 réponse

jordane45 Messages postés 38366 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 1 janvier 2025 4 720
18 janv. 2017 à 08:38
Bonjour
Fais donc.un echo de $sql pour voir a quoi ressemble la requête.
0