Erreur syntaxe PHP mysql

Fermé
ZeciStuFF Messages postés 42 Date d'inscription vendredi 24 février 2006 Statut Membre Dernière intervention 1 septembre 2011 - 26 avril 2011 à 17:40
 le père - 26 avril 2011 à 18:09
Bonjour,

J'ai une erreu sur cette ligne et je ne vois pas d'ou elle viens
$sql = 'UPDATE categories WHERE id="' . $_POST['cat'] . '" VALUES("", "'.mysql_escape_string($_POST['ncat']).'", "'.mysql_escape_string(($_POST['description'])).'")';



voila l'erreur :
Erreur SQL !UPDATE categories WHERE id="5" VALUES("", "php", "laa")
Erreur de syntaxe près de 'WHERE id="5" VALUES("", "php", "laa")' à la ligne 1

Faites pas attention aux valeurs c'était pour faire des tests :)



A voir également:

3 réponses

Bonjour

La clause WHERE doit être après VALUES(..)
0
ZeciStuFF Messages postés 42 Date d'inscription vendredi 24 février 2006 Statut Membre Dernière intervention 1 septembre 2011 29
26 avril 2011 à 18:02
voila donc la ligne corrigée
$sql = 'UPDATE categories  VALUES("", "'.mysql_escape_string($_POST['ncat']).'", "'.mysql_escape_string(($_POST['description'])).'") WHERE id="' . $_POST['cat'] . '"';


Cependant j'ai toujours l'erreur !
0
Le message d'erreur a dû changer...

Mais c'est vrai que la syntaxe d'UPDATE n'utilise pas VALUES (ça c'est pour INSERT) mais SET colonne1=valeur1, colonne2=valeur2...

et tu devrais utiliser aussi mysql_escape_string dans ton WHERE id= "$_POST|'cat']"
0