Page 1 sur 1

SELECT articles WHERE data ...

Posté : 27 juil. 2015, 18:47
par stephweb
Bonjour,
je viens demander un peu d'aide SVP. Car je bloc sur un truc.

Dans mes articles que je publie pour des évènements, je leur ajoute la date de l'évènement que j'enregistre dans ma BDD dans un DATETIME.
Dans ma BDD, mes dates enregistrées sont donc comme ceci: 2015-07-30 00:00:00

Et je souhaite sélectionner tout les articles dont les dates des événements sont après la date d'aujourd'hui.
J'ai essayé ceci:

Code : Tout sélectionner

$sql = "SELECT titre_h1, contenu, title, url, date_publ, image_url FROM ".$this->_tableArticles." WHERE date_evenement > CURDATE()" $requete = $this->db()->prepare($sql); $requete->execute(); $result = $requete->fetchAll(PDO::FETCH_OBJ); ...
Mais ça ne marche pas. Pourquoi?
Merci d'avance.

Re: SELECT articles WHERE data ...

Posté : 27 juil. 2015, 18:56
par Ascla
Bonjour,
Tu as oublié le ";" à la fin de $sql :
$sql = "SELECT titre_h1, contenu, title, url, date_publ, image_url
      FROM ".$this->_tableArticles."
      WHERE date_evenement > CURDATE()";
      
$requete = $this->db()->prepare($sql);
$requete->execute();
$result = $requete->fetchAll(PDO::FETCH_OBJ);

Re: SELECT articles WHERE data ...

Posté : 27 juil. 2015, 19:00
par stephweb
Merci. mais l'erreur ne viens pas de la. Le ";" je l'ai bien mis dans mon code dans wamp. Je l'ai mal recopié.
PDO EXCEPTION m'ecri cette erreur:
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 'AND date_evenement > CURDATE()' at line 3 in C:\wamp\www\....

Re: [RESOLU] SELECT articles WHERE data ...

Posté : 27 juil. 2015, 19:04
par stephweb
Sujet résolu en fait. J4avais un conflit avec un ORDER BY. j'avais mis le ORDER BY avant WHERE date_evenement.... c'est ça qui plantait.
Je viens de déplacer le ORDER BY après, maintenant ça fonctionne.
merci

Re: [RESOLU] SELECT articles WHERE data ...

Posté : 27 juil. 2015, 19:07
par Ascla
Sujet résolu en fait. J4avais un conflit avec un ORDER BY. j'avais mis le ORDER BY avant WHERE date_evenement.... c'est ça qui plantait.
Je viens de déplacer le ORDER BY après, maintenant ça fonctionne.
merci
Oui, le ORDER BY se place bien après le WHERE.
Bonne soirée,