[RESOLU] Erreur: SQLSTATE[42000]: Syntax error or access violation: 1064

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] Erreur: SQLSTATE[42000]: Syntax error or access violation: 1064

Re: Erreur: SQLSTATE[42000]: Syntax error or access violation: 1064

par Pierre_Onyx » 05 sept. 2019, 16:36

Problème résolu, merci beaucoup.
J'avais essayé par transtypage sans succès

Re: Erreur: SQLSTATE[42000]: Syntax error or access violation: 1064

par or 1 » 05 sept. 2019, 13:16

Erreur: SQLSTATE[42000]: Syntax error or access violation: 1064

par Pierre_Onyx » 05 sept. 2019, 12:07

Bonjour,

J'effectue actuellement le cours de PHP sur OpenClassrooms. sur le TP minichat, je rencontre l'erreur suivante:
Fatal error: Uncaught PDOException: SQLSTATE[42000]: Syntax error or access violation: 1064 Erreur de syntaxe près de ''0', '10'' à la ligne 1 in C:\wamp64\www\TP\minichat\minichat.php on line 28
J'ai regardé sur plusieurs forums mais je n'ai rien trouvé qui ressemblait à sa.
mon code est le suivant, l'erreur est sur la ligne de "execute()" lors de l'insertion des variables:

Code : Tout sélectionner

<?php try{ $bdd = new PDO('mysql:host=localhost;dbname=minichat;charset=utf8', 'root', '', array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION)); } catch(Exception $e){ die('Erreur : ' . $e->getMessage()); } if(isset($_GET['page'])){ $nlimitsup = $_GET['page']*10; $nlimitinf = $nlimitsup-10; }else{ header('Location: minichat.php?page=1'); } $response = $bdd->prepare('SELECT pseudo, message FROM message ORDER BY id DESC LIMIT :limitinf, :limitsup '); $response->execute(array( 'limitinf' => $nlimitinf, 'limitsup' => $nlimitsup, )); // $response = $bdd->query('SELECT pseudo, message FROM message ORDER BY id DESC LIMIT 0,10');
La dernière ligne, en commentaire, est le code de base et fonctionne très bien.

Je pense que s'est une erreur assez simple, mais je ne la trouve pas....