Pb avec un INSERT [Résolu]

Signaler
Messages postés
14
Date d'inscription
lundi 8 janvier 2007
Statut
Membre
Dernière intervention
1 juin 2007
-
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
-
salut à tous !!
je vous explique vite fait mon soucis. je dois insérer dans une table de nouveaux arrivants, mais je n'y arrive pas !!! Vous allez me dire que je suis nul, et vous auriez pas tort...je vous est mis en dessous mon code php/mysql. Je ne comprends pas ce qui va pas !!! Alors si quelqu'un pourrait m'aider, ça me ferais bien plaisir.

<?php

//récupération des différentes variables du formulaire
$nom= $_REQUEST['nom'];                   // indentifiant de l'utilisateur
$entreprise=$_REQUEST['entreprise'];     // nom de l'entreprise
$descripteur=$_REQUEST['descripteur'];   // nom du descripteur à enregistrer
$com1=$_REQUEST['com1'];                 // commentaire du descripteur
$Type=$_REQUEST['Type'];                 // type du descripteur
$precisions=$_REQUEST['precisions'];     // précisions sur le descripteur

        $conn=mysql_connect("localhost", "root", "essai");
        
        mysql_select_db("essai");
        
        /*insertion du descriteur dans la base de donnée*/
        mysql_query("insert into descripteurs(nomD, numD, typeD, com1, com2, nomE) values ('$descripteur', '$num', '$Type', '$com1', '$precisions', '$entreprise')");
        
        /*mise à jour de la plage de numéro de l'entreprise dans la base de donnée*/
        mysql_query("update entreprises set NbPlageUtil ='$num' where nomE='$entreprise'");

        /*fermeture de la connexion*/
        mysql_close($conn);
        
       echo"descripteur ajouté à la base de données";

?>

8 réponses

Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
39
Salut,

INSERT INTO descripteurs (`nomd`, `numd`, `typed`, `com`, `precision`, `nome`)

In a dream, I saw me, drop dead... U was there, U cried... It was just a dream, if I die, U won't cry, maybe, U'll be happy

Mon site (articles sur la programmation et programmes)
Messages postés
99
Date d'inscription
lundi 8 septembre 2003
Statut
Membre
Dernière intervention
1 septembre 2010

Salut,

déjà je te déconseille les majuscules dans le nom d'une variable, bien que je ne pense pas que c'est la source du problème.
Le script te retourne aucune erreur?

Si non, il y a peut-être un simple quote (') qui fait foirer la requête d'insertion. Essaye d'appliquer cette fonction à toutes tes variables qui doivent aller dans la requête -> mysql_real_escape_string();. Ca évite aussi les injections sql ;)

a+

Annuaire et actualités de blogs : Rechercher et soumettre son blog gratuitement dans notre annuaire
Messages postés
365
Date d'inscription
samedi 26 juin 2004
Statut
Membre
Dernière intervention
17 avril 2008

T'as peut etre mal configuré apache pour acceder a Mysql
Si t'as installé tout les uns apres les autres, vérifie que Mysql peut bien etre appelé

mysql_connect("localhost", "root", "") or die("Impossible de se connecter à la BDD");
mysql_select_db("lucillion") or die("Impossible de selectionner la DataBase");

ca mange pas de pain mais t'es fixé

regarde aussi les types que t'as mis dans la structure de tes tables peut etre que tu mes pas le bon type d'information dans les champs

_Marikou
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
39
Salut,

or die(mysql_error());

sinon, on ne peut rien pour toi

In a dream, I saw me, drop dead... U was there, U cried... It was just a dream, if I die, U won't cry, maybe, U'll be happy

Mon site (articles sur la programmation et programmes)
Messages postés
14
Date d'inscription
lundi 8 janvier 2007
Statut
Membre
Dernière intervention
1 juin 2007

je ne l'ai pas précisé mais j'utilise easyphp pour faire les tests !!! Il y a peut etre qqch qui viendraiot de là ???
Messages postés
14
Date d'inscription
lundi 8 janvier 2007
Statut
Membre
Dernière intervention
1 juin 2007

Alors j'ai tout testé !!! et j'arrive à affiché l'erreur mais je ne vois pas d'ou elle vient !!! 

1064: Erreur de syntaxe près de 'precision, nome) VALUES (test, 51, Flags, ben c'est un test, abcd' à la ligne 1

et voici le code

Franchement je deviens fou avec cette ligne de code !!!!



$sql="INSERT INTO descripteurs (nomd, numd, typed, com, precision, nome) 
                 VALUES ($descripteur, $num, $type, $com, $precisions, $entreprise)";

mysql_query($sql);

les variables que je veux inserer sont issues d'un formulaire !! je vous le garantis je ne comprends plus rien !!
Messages postés
14
Date d'inscription
lundi 8 janvier 2007
Statut
Membre
Dernière intervention
1 juin 2007

merci coucou747, ça a presque résolu mon problème, il fallait aussi que je mette des simples cotes autour des mes variables '$com' etc....
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
39
Salut,

bah toujours pour des chaines....

In a dream, I saw me, drop dead... U was there, U cried... It was just a dream, if I die, U won't cry, maybe, U'll be happy

Mon site (articles sur la programmation et programmes)