Insertion de code HTML dans une table, avec UPDATE
Bonjour � tous,
Je suis en train de d�velopper pour l'un de mes sites une zone d'administration, o� il est notamment possible de modifier le contenu des pages, pour des r�dacteurs qui vont m'assister.
Ce contenu est constitu� de code html basique : <p>, <h1> <img> <a> <blockquote> et, selon le cas, de <table> et sa clique.
Je n'ai eu aucun probl�mes pour r�cup�rer les donn�es de la page � modifier (titre, rubrique et contenu) et les afficher dans un formulaire.
Les donn�es du formulaire sont ensuite envoy�es � une requete SQL UPDATE, qui se charge de mettre la ligne correspondante ($id) de la table 'page'.
Si je n'ex�cute que ce code, tout se passe sans probl�me et les donn�es sont modifi�es dans la table :
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
$id = $_POST['id'];
$title = $_POST['title'];
$rub = $_POST['rub'];
mysql_query("
UPDATE page SET
title = '" . mysql_real_escape_string ( $title ). "',
rub = '" . mysql_real_escape_string ( $rub ). "'
WHERE id=$id
") or die (mysql_error()); |
Maintenant, si je rajoute la variable $content dans la requete, comme ci-dessous :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
$id = $_POST['id'];
$title = $_POST['title'];
$rub = $_POST['rub'];
$content = $_POST['content'];
mysql_query("
UPDATE page SET
title = '" . mysql_real_escape_string ( $title ). "',
rub = '" . mysql_real_escape_string ( $rub ). "',
content = '" . mysql_real_escape_string ( $content ). "'
WHERE id=$id
") or die (mysql_error()); |
j'ai le message suivant qui s'affiche :
Citation:
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 'content = '
Petit test de contenu d\\\'une page...
' WH
C'est donc le code HTML contenu dans la variable $content.
Je ne crois rien voir dans mon code qui soit � l'origine du probl�me.
Je pr�cise que j'utilise FCKEditor pour la modification du contenu, car certains de mes r�dacteurs ne connaissent rien au HTML, m�me basique. Peut-il �tre � la base de mes ennuis ?
J'ai tent� avec addslashes(), rien...
Ca me laisse vraiment perplexe.
Merci d'avance pour votre aide :mrgreen: