Bonjour,
J'ai l'erreur SQL suivante :
Lorsque j’exécute le code suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part SQLSTATE[42000]: Syntax error or access violation: 1064 Erreur de syntaxe près de ':idProduct ORDER BY pri.record_date ' à la ligne 5
Je n'arrive pas à trouver ce qui cloche. Lorsque, dans la requête, je remplace :idProduct par la valeur du paramètre PHP (à savoir 7), la requête fonctionne.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 $list = array(); $req = Conf::Get()->DB->query('SELECT pro.id AS pro_id, pro.name AS pro_name, u.id AS u_id, u.name AS u_name, pro.image AS pro_image, pri.record_date AS pri_record_date, pri.value AS pri_value FROM product pro JOIN unit u ON u.id = pro.unit JOIN price pri ON pri.product = pro.id WHERE pro.id = :idProduct ORDER BY pri.record_date DESC'); $req->execute(array('idProduct' => $idProduct)); while ($reader = $req->fetch()) { array_push($list, Price::FromReader($reader)); } $req->closeCursor(); return $list;
J'ai vérifié la valeur du paramètre $idProduct et je reçois bien 7.
Arrivez-vous à trouver ce qui ne va pas ?
Pour info, je travail sous Wamp 3.0.6 64bit, Apache 2.4.23, PHP 5.6.25 et MySQL 5.7.14
Merci d'avance![]()
Partager