Erreur SQL syntax

WRInaute occasionnel
Bonjour,
J'ai un problème avec une requête:
Code:
$sql1 = "SELECT $tab_mem.pseudo, $tab_mem.id_membre, $tab_mem.email, $tab_ch.choix, $tab_ch.id_annonce, $tab_ch.nom FROM $tab_ch LEFT JOIN $tab_mem on $tab_ch.id_pseudo = $tab_mem.id_membre WHERE (DATE($tab_ch.date_aj)=SUBDATE(CURDATE(),INTERVAL 5 DAY)) and ($tab_ch.val_an='1' OR $tab_ch.val_an='2' OR $tab_ch.val_an='5')";
Pour info, $tab_ch = chien_chien

J'ai comme réponse :
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 '(chien_chien.date_aj)=SUBDATE(CURDATE(),INTERVAL 5 DAY)) and (c
La partie qui pose problème vient de :
Code:
WHERE (DATE($tab_ch.date_aj)=SUBDATE(CURDATE(),INTERVAL 5 DAY))

Or cette même requête fonctionne sur un autre site (j'ai fais un copier coller) et la structure de la table est identique

D'où peut venir le problème?
 
WRInaute accro
Je doute un peu que le problème vienne de là, mais quelle est la version du serveur mysql concerné?

Sinon il serait utile d'essayer d'isoler plus précisément le problème en simplifiant le select jusqu'à ce qu'il n'y ait plus d'erreurs (i.e. tu enlèves un petit bout à chaque fois, même si ça ne fait pas grand sens, juste pour isoler l'erreur exacte).

Jacques.
 
Discussions similaires
Haut