<?php
$req = $bdd->prepare('SELECT Pseudo, Contenu, DATE_FORMAT(Date, %d/%m/%Y %Hh%imin%ss) FROM commentaire WHERE Affichage= 1 AND Article = :id_article ORDER BY Id DESC LIMIT :min , :max');
$req->bindValue('min', ($page_actuel -1)*10 , PDO::PARAM_INT);
$req->bindValue('max', ($page_actuel -1)*10 + 10 , PDO::PARAM_INT);
$req->bindValue('id_article' , $id , PDO::PARAM_INT);
$req->execute();
?>
Ceci me renvoi l'erreur MySQl suivante :
Citation : MySQL
Erreur : 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 '%d/%m/%Y %Hh%imin%ss) FROM commentaire WHERE Affichage= 1 AND Article = '1' ORDE' at line 1
J'ai aussi essayer sous cette forme:
<?php //%d/%m/%Y %Hh%imin%ss devient '%d/%m/%Y %Hh%imin%ss'
$req = $bdd->prepare('SELECT Pseudo, Contenu, DATE_FORMAT(Date, '%d/%m/%Y %Hh%imin%ss') FROM commentaire WHERE Affichage= 1 AND Article = :id_article ORDER BY Id DESC LIMIT :min , :max');
$req->bindValue('min', ($page_actuel -1)*10 , PDO::PARAM_INT);
$req->bindValue('max', ($page_actuel -1)*10 + 10 , PDO::PARAM_INT);
$req->bindValue('id_article' , $id , PDO::PARAM_INT);
$req->execute();
?>
Mais cette fois c'est php qui m'indique une erreur sur la 1ere ligne.
Ceci est mon premiere essai avec les date fais a l'aide du tuto de M@teo21
Merci d'avance
Ben la 2e solution est la bonne, sauf qu'il faut échapper les ' à l'interieur de la requête. Ca se voit à la coloration. Donc cherche comment on échappe un caractère en PHP
de tete l'echappement s'est avec "\"
merci
ps: en plus la coloration je l'ai vu le pb ... j'y ai vraiment pas penser
[MySQL] Bug DATE_FORMAT
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
Tutoriel complet MySQL !