gestion d'une erreur en php

Nouveau WRInaute
j ai realise un code qui modifi une table "hotel" mais toujours j ai une erreur la voila :

"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 'where idDetailChambre=3' at line 1"

voila mon code :
<?php
}
else
{
$m=$_POST["t1"];
$n=$_POST["t2"];
$o=$_POST["t3"];
$p=$_POST["t4"];
include('connexion.php');
$sql= "select * from detailchambre where idDetailChambre=$m";
$res=mysql_query($sql);
if(mysql_num_rows($res)==1)
{
$sql="update detailChambre set idLangue=$n,idChambre=$o,designation='$p', where idDetailChambre=$m";
$res=mysql_query($sql) or die('erruer dans la requete'.mysql_error());
echo "la langue à été modifier";
}
}
?>

quelqu un peut m aider pour savoir c quoi l erreur


merci d'avance .
 
WRInaute impliqué
Je dirais cette ligne mais je n'en suis pas sûr :
Code:
$sql="update detailChambre set idLangue=$n,idChambre=$o,designation='$p', where idDetailChambre=$m";

essaye avec :
Code:
$sql="update detailChambre set idLangue=$n,idChambre=$o,designation= ' . $p . ' , where idDetailChambre=$m";
 
WRInaute accro
C'est la porte ouverte à toutes injections SQL ce code

Protège des champs, enlève cette virgule avant le where
 
WRInaute discret
bonjour,
non sa syntaxe est 'bonne', avec ta solution darkjukta ça va juste ajouter des . autour de désignation ^^

l'erreur se situe plutôt juste avant le WHERE, il y a une virgule en trop.

Edit: Zut grillé, mais rien ne dit qu'il ne fait pas une vérification avant la requette
 
Discussions similaires
Haut