Problème INSERT PHP/ACCESS

Fermé
filoulebauju - 14 avril 2008 à 15:27
 pink11 - 14 avril 2008 à 16:47
Bonjour,

Je suis actuellement en train de créer un site internet pour le gestion du parc informatique.
Je voudrai ajouter les nouveaux matériaux à parti du site et je passe par un formulaire.

Le problème est qu'au moment de l'ajout, j'ai cette erreur.:

Warning: odbc_exec() [function.odbc-exec]: SQL error: [Microsoft][Pilote ODBC Microsoft Access] Type de données incompatible dans l'expression du critère., SQL state 22005 in SQLExecDirect in C:\wamp\www\parcinfo\gestion\ajout_mat_trait.php on line 34

Voici le code:
<?php
$odbc = odbc_connect('parcinfo','root','') or die("Could Not Connect to ODBC Database!");

If(
isset($_POST['num']) || isset($_POST['libelle']) || isset($_POST['num_compta']) || 
isset($_POST['prix_achat']) || isset($_POST['duree_ammo']) || isset($_POST['fournisseur']) || 
isset($_POST['marque']) || isset($_POST['date_achat']) || isset($_POST['date_deb_gar']) || 
isset($_POST['date_fin_gar']) || isset($_POST['type']) || isset($_POST['Utilisateur'])
)
{
echo "erreur";
}
else{
$identifiant=$_POST['num'];
$libelle=$_POST['libelle'];
$num_compta=$_POST['num_compta'];
$prix_achat=$_POST['prix_achat'];
$duree_amo=$_POST['duree_amo'];
$fournisseur=$_POST['fournisseur'];
$marque=$_POST['marque'];
$date_achat=$_POST['date_achat'];
$date_deb_gar=$_POST['date_deb_gar'];
$date_fin_gar=$_POST['date_fin_gar'];
$type=$_POST['type'];
$utilisateur=$_POST['Utilisateur'];

$sql_fournisseur=odbc_exec($odbc,"select num_fournisseur from fournisseur where nom_fournisseur='".$fournisseur."'");
$sql_utilisateur=odbc_exec($odbc,"select num_utilisateur from utilisateurs where nom_utilisateur='".$utilisateur."'");

$ajout=odbc_exec($odbc, "INSERT INTO materiel ([num_materiel], [libelle_materiel], [marque], 
[num_compta], [prix_achat], [Duree_amortissement], [num_fournisseur], 
[date_debut_garantie], [date_fin_garantie], [date_achat], [type], [num_utilisateur])
VALUES ('$identifiant', '$libelle', '$marque', '$num_compta', '$prix_achat', '$duree_amo', '$sql_fournisseur',
'$date_deb_garantie', '$date_fin_garantie', '$date_achat', '$type', '$sql_utilisateur')");

}
?>


Merci de votre aide.
A voir également:

1 réponse

Bonjour,

peut être y'a t'il une erreur de type de données.
Je m''explique, t'essaies peut être d'insérer un int alors que c'est un double ?
ou alors un double alors que c'est un float ?!

Faudrait avoir les types de données de ta base stp.
0