Erreur syntaxe sql : mystère

daporoty Messages postés 54 Date d'inscription mercredi 4 mai 2005 Statut Membre Dernière intervention 10 septembre 2012 - 4 oct. 2010 à 23:11
daporoty Messages postés 54 Date d'inscription mercredi 4 mai 2005 Statut Membre Dernière intervention 10 septembre 2012 - 6 oct. 2010 à 21:58
Bonjour,

J'ai une erreur sql sur une requète ou il n'y a pas de problème !?

Récupération des données d'un formulaire et update de la table :

if(isset($_POST['envoi'])){
$numebay=mysql_real_escape_string($_POST['numebay']);
$titrebay=mysql_real_escape_string($_POST['titrebay']);
$titre=mysql_real_escape_string($_POST['titre']);
$desc=mysql_real_escape_string($_POST['desc']);
$planning=mysql_real_escape_string($_POST['planning']);
$prixdep=mysql_real_escape_string($_POST['prixdep']);
$prixa=mysql_real_escape_string($_POST['prixa']);
$prixv=mysql_real_escape_string($_POST['prixv']);
$port=mysql_real_escape_string($_POST['port']);
$portreel=mysql_real_escape_string($_POST['portreel']);
$ebayins=mysql_real_escape_string($_POST['ebayins']);
$ebayvente=mysql_real_escape_string($_POST['ebayvente']);
$sql="UPDATE ebay SET numebay='".$numebay."', titrebay='".$titrebay."', titre='".$titre."', desc='".$desc."', planning='".$planning."', prixdep='".$prixdep."', prixa='".$prixa."', prixv='".$prixv."', port='".$port."', portreel='".$portreel."', ebayins='".$ebayins."', ebayvente='".$ebayvente."' WHERE id='".$id."'";
$rq=mysql_query($sql) or die(mysql_error());
}


Le message d'erreur :

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 'desc='testdesc', planning='testplanning', prixdep='123.00', prixa='45.00', prixv' at line 1


Une idée ?

DapORoty

4 réponses

cs_jeca Messages postés 341 Date d'inscription mercredi 17 juillet 2002 Statut Membre Dernière intervention 14 juillet 2011 14
5 oct. 2010 à 03:37
Bonjour,

Une de tes colonnes porte le nom 'desc'. C'est un mot réservé SQL. Il faut le renommer dans la table, ou bien l'encadrer par "`" (Alt GR + 7).

Cordialement.

JC
0
cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 371
5 oct. 2010 à 09:14
Je ne suis pas certain de ce que je dis étant donné que je ne connais pas les types des variables de ta table mais, si tu as un type numérique, il ne faut pas mettre de ' par exemple sur numebay au lieu de :
"UPDATE ebay SET numebay='".$numebay."'...,

il faudrait mettre
"UPDATE ebay SET numebay=".$numebay."...,
0
neigedhiver Messages postés 2480 Date d'inscription jeudi 30 novembre 2006 Statut Membre Dernière intervention 14 janvier 2011 19
5 oct. 2010 à 13:35
En l'occurrence, le message d'erreur concerne bien l'erreur décrite par jeca.
MySQL enregistre de toute façon tout dans le même format, ce n'est que le moteur qui interprète quand il le faut le type de variable ; il est encore plus laxiste que PHP sur cette question...

--
Neige

Souvent la réponse à votre question se trouve dans la doc. Commencez par là ;)
0
daporoty Messages postés 54 Date d'inscription mercredi 4 mai 2005 Statut Membre Dernière intervention 10 septembre 2012
6 oct. 2010 à 21:58
Merci,

C'était bien ça jeca.

DapORoty
0
Rejoignez-nous