Bonjour à tous,

Je suis en train de réaliser un petit script qui vise à insérer des utilisateurs dans une table d'une base Access.

Le schéma de la table est le suivant :

T4Cusers ( ID , Account , Password , Account_type , Expired , Fullname , Email , CreationDate , RevisionDate )

Le champ ID est de type NuméroAuto



Pour l'insertion des membres, j'utilise un système tout bête basé sur deux pages :
  1. La page qui contient le formulaire
  2. La page qui traite les données transmises par le formulaire



Sur la page de traitement, j'effectue ma requête d'insertion. Je précise que je ne veux remplir que 3 champs dans la table. Les autres sont donc laissés à NULL.

Le code de le requête est le suivant :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
//Connexion à la BDD
$connexion = odbc_connect( "bdd_t4c", "", "");
 
//Requete
$requete = "INSERT INTO T4Cusers ( Account , Password , Email )
		VALUES (\"$login\" , \"$mdp\" , \"$email\");";
 
//Execution de la requete
odbc_do($connexion, $requete)
La requête ne fonctionne pas, j'ai l'erreur suivante :

Warning: odbc_do(): SQL error: [Microsoft][Pilote ODBC Microsoft Access] Trop peu de paramètres. 1 attendu., SQL state 07001 in SQLExecDirect

J'ai essayé de faire un echo() de la requête, ce qui me donne :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
INSERT INTO T4Cusers ( Account , Password , Email )
           VALUES ("dfdf" , "dfdf" , "dfdf");
Lorsque je copie cette requête dans Access, elle fonctionne.

Je ne comprend donc pas pourquoi elle ne fonctionne pas lorsqu'elle est exécutée via PHP.


Merci pour toute aide apportée