PDOException: SQLSTATE[42000]: Syntax error or access violation:

Résolu/Fermé
Jbdo99 - 14 mai 2015 à 16:37
 Jbdo99 - 15 mai 2015 à 18:50
Bonjour,
et déjà merci si vous avez une réponse ^^
Voici le code que j utilise
<?php
try
{
// On se connecte à MySQL
$bdd = new PDO('mysql:host=localhost;dbname=test;charset=utf8', 'root', '', array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
}
catch(Exception $e)
{
// En cas d'erreur, on affiche un message et on arrête tout
die('Erreur : '.$e->getMessage());
}

$nom = $_POST['name'];
$auteur = $_POST['auteur'];
$chap = $_POST['chap'];
$contenu = $_POST['contenu'];


$req = $bdd->prepare('INSERT INTO chronique(auteur, nom, contenu, chap) VALUES(:auteur, :nom, :contenu, :chap');

$req->bindValue(":auteur", $auteur, PDO::PARAM_STR);
$req->bindValue(":nom", $nom, PDO::PARAM_STR);
$req->bindValue(":contenu", $contenu, PDO::PARAM_STR);
$req->bindValue(":chap", $chap, PDO::PARAM_INT);

$req->execute();
$req->closeCursor();

echo 'REUSSI';


?>

Et voici l'erreur :
Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[42000]: Syntax error or access violation: 1064 Erreur de syntaxe près de '' à la ligne 1' in C:\wamp\www\TEST\traitement.php on line 26

puis ça :

PDOException: SQLSTATE[42000]: Syntax error or access violation: 1064 Erreur de syntaxe près de '' à la ligne 1 in C:\wamp\www\TEST\traitement.php on line 26

Pour info la ligne 26 est celle de
$req->execute();

J'ai compris que c'est un erreur de syntaxe mais je ne vois pas laquelle


Merci de me répondre

Jbdo99




2 réponses

totoyo47 Messages postés 260 Date d'inscription vendredi 10 juillet 2009 Statut Membre Dernière intervention 30 mars 2020 133
14 mai 2015 à 18:23
Il manque la parenthèse fermante de VALUES dans ta requète ;)
1