Erreur syntaxique dans une requette

Résolu
glow_ivory Messages postés 20 Statut Membre -  
glow_ivory Messages postés 20 Statut Membre -
Bonjour,

j'ai passé une demi journée en asseyent de résoudre un problème,qd je Click sur le bouton envoyer dans mon formulaire qui mène vers mon fichier php, MySQL m'affiche ce message d'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 'div,serv,proc,nature,prob,cause,cons,serv_aut,insatisf,att,autres,prop1,prop2,et' at line 1

voici le code php:

<?php
try
{
// On se connecte à MySQL
$pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
$bdd = new PDO('mysql:host=localhost;dbname=audit', 'root', '', $pdo_options);

$req = $bdd->prepare('INSERT INTO frap( div,serv,proc,nature,prob,cause,cons,serv_aut,insatisf,att,autres,prop1,prop2,etabli)
VALUES (:div, :serv, :proc, :nature :prob, :cause, :cons, :serv_aut, :insatisf, :att, :autres, :prop1, :prop2, :etabli)');
$req->execute(array(

'div'=> $_POST['division'],
'serv'=> $_POST['serv'],
'proc'=> $_POST['proc'],
'nature'=> $_POST['nature'],
'prob'=> $_POST['prob'],
'cause'=> $_POST['cause'],
'cons'=> $_POST['cons'],
'serv_aut'=> $_POST['serviceprob'],
'insatisf'=> $_POST['sujet'],
'att'=> $_POST['att'],
'autres'=> $_POST['autre'],
'prop1'=> $_POST['prop1'],
'prop2'=> $_POST['prop2'],
'etabli'=> $_POST['etabli']
));
}
catch(Exception $e)
{
die('Erreur : '.$e->getMessage());
}
echo'la grille a été bien remplie';
?>

j'espère que quelqu'un pourra m'aider
merci d'avance

2 réponses

  1. le père
     
    Vu

    div est un mot réservé de mySQL. Si tu veux l'utiliser comme nom de champ, il faut l'entourer d'accents graves (ou apostrophe inversée, même touche que le 7 sur mon clavier). Je ne l'écris pas car ce signe apparaît comme une apostrophe normale sur ce site.
    À mon humble avis, tu ferais mieux de changer le nom de ton champ pour ne pas utiliser de mot réservé.
    1
    1. glow_ivory Messages postés 20 Statut Membre
       
      je vous remercie bcp,mnt mon probleme est resolu ,je suis tres contente :)
      0
  2. le père
     
    Bonsoir,

    Bizarre, le message d'erreur. J'aurais plutôt dit qu'il manque une virgule entre :nature et :prob,
    0
    1. glow_ivory Messages postés 20 Statut Membre
       
      oups,merci bcp pour la remarque,mé mon proleme n'est pas encore resolu
      0