8768 sujets

Développement web côté serveur, CMS

Bonjour,
J'ai une erreur MySql dans mon code, voici l'erreur :
Fatal error: Uncaught PDOException: 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 '`description` LIKE Minecraft' at line 1 in C:\Program Files (x86)\EasyPHP-Devserver-17\eds-www\library\index.php:20 Stack trace: #0 C:\Program Files (x86)\EasyPHP-Devserver-17\eds-www\library\index.php(20): PDO->query('SELECT * FROM l...') #1 {main} thrown in C:\Program Files (x86)\EasyPHP-Devserver-17\eds-www\library\index.php on line 20

Voici la ligne ou le code me fait ça :
$liba = $db->query('SELECT * FROM library WHERE `name`,`description` LIKE '.$recherche);

Modifié par BurgerKingKong (22 Jan 2023 - 10:30)
Après avoir lu la documentation, il faut écrire
$liba = $db->prepare('SELECT * FROM library WHERE name LIKE ? OR description LIKE ?');
	$liba->execute(array('%' . $recherche . '%', '%' . $recherche . '%'));

Modifié par BurgerKingKong (24 Jan 2023 - 17:54)
Meilleure solution
Et la ça marche? tu dois encore avoir une erreur non ?
Modifié par JENCAL (24 Jan 2023 - 14:25)