Bonjour voila, j'utiliser PHP avec un base de données Access et je rencontre un probleme lorsque que je test mes requête, ma première requete passe sans problème, mais ensuite je fais un INSERT et a l'execution j'ai une jolie erreur m'indiquant qu'il y a une erreur de syntaxe dans mon insert:
Warning: odbc_do(): SQL error: [Microsoft][Pilote ODBC Microsoft Access] Erreur de syntaxe dans l'instruction INSERT INTO., SQL state 37000 in SQLExecDirect in
c:\program files\easyphp1-8\www\intervention.php on line
46
37000
pourtant j'ai bien regardé et je ne vois pas en quoi mon INSERT présente une erreur de syntaxe.
$sql = "INSERT INTO donnees_intervention ( ID Site, Raison sociale, Bilan, Memo) VALUES ( '$idClient->ID_Site', '$client', '$bilan', '$memo') " ;
pour ceux que ça intéresse voila la code php :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
| <?
//connection au serveur
$cnx = odbc_connect( "DSN_ines", "root", "" ) or die ("Impossible de se connecter à la bas de donnée") ;
//récupération des valeurs des champs:
//client :
$client = $_POST['client'] ;
//bilan :
$bilan = $_POST['bilan'] ;
//mémo :
$memo = $_POST['memo'] ;
//*************************************************
//Récupération de l'identifiant du client :
//*************************************************
//requête SQL :
$sql = "SELECT ID_Site FROM site WHERE Raison_sociale = '$client'" ;
//exécution de la requête :
$requete = odbc_do($cnx, $sql) or die( odbc_error() ) ;
$idClient = odbc_fetch_object( $requete );
echo $idClient->ID_Site;
//*******************************************************************************
//Stokage des informations de l'intervention dans la table donnees_intervention :
//*******************************************************************************
//requête SQL :
$sql = "INSERT INTO donnees_intervention ( ID Site, Raison sociale, Bilan, Memo)
VALUES ( '$idClient->ID_Site', '$client', '$bilan', '$memo') " ;
//exécution de la requête :
$requete = odbc_do($cnx, $sql) or die( odbc_error() ) ;
//affichage des résultats, pour savoir si l'insertion a marchée:
if($requete)
echo("<center>L'insertion a été correctement effectuée</center>") ;
else
echo("<center>L'insertion à échouée</center>") ;
?> |
Si quelqu'un pouvait m'aider je lui en serrait reconnaissant. Merci
Partager