Apostrophe dans un champs "text"

Fermé
hanagi Messages postés 135 Date d'inscription dimanche 26 octobre 2008 Statut Membre Dernière intervention 13 décembre 2012 - 5 juin 2009 à 23:33
hanagi Messages postés 135 Date d'inscription dimanche 26 octobre 2008 Statut Membre Dernière intervention 13 décembre 2012 - 6 juin 2009 à 13:15
bonsoir,
svp, dans une table (phpmyadim, mysql) j'ai un champs de type "text", je remplis ce champs à partir d'une zone de texte d'un formulaire dans une page web (avec dreamweaver php wamp...), mais qand j'écris dans la zone Une apostrophe , on me donne un msg d'erreur :

Erreur SQL !INSERT INTO table (champs) VALUES (' l'enseignent ')
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 'e of shit')' at line 1


avez vous une idée
A voir également:

5 réponses

kelsett Messages postés 353 Date d'inscription dimanche 9 juillet 2006 Statut Membre Dernière intervention 13 octobre 2014 62
5 juin 2009 à 23:40
Tu as deux solutions, tu peux :

- soit ajouter des slashes à chaque apostrophe grâce à la fonction addslashes()

- soit remplacer (' l'enseignent ') par (" l'enseignent ")
0
hanagi Messages postés 135 Date d'inscription dimanche 26 octobre 2008 Statut Membre Dernière intervention 13 décembre 2012 3
5 juin 2009 à 23:44
ok, merci bcpp kelsett :) (:
0
hanagi Messages postés 135 Date d'inscription dimanche 26 octobre 2008 Statut Membre Dernière intervention 13 décembre 2012 3
6 juin 2009 à 02:03
slt, peut tu me donner la syntaxe de cette fonction, je ne sais pas comment l'utiliser
Merci d'avance :)
0
imencity Messages postés 214 Date d'inscription mardi 5 mai 2009 Statut Membre Dernière intervention 29 août 2014 43
6 juin 2009 à 11:02
et hop:
http://www.punchost.com/php/function.addslashes.php
ça colle ;-)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
hanagi Messages postés 135 Date d'inscription dimanche 26 octobre 2008 Statut Membre Dernière intervention 13 décembre 2012 3
6 juin 2009 à 13:15
Merciii ça marche :)
J'ai mis dans le code :
$var2=addslashes($_POST['cham1']);
$var3=addslashes($_POST['cham2']);
$sql = "INSERT INTO table (cham, cham1, cham2) VALUES ('1','$var2','$var3')";
mysql_query ($sql) or die ('Erreur SQL !'.$sql.'<br />'.mysql_error());

Si ça peut aider quelqu'un d'autre ;)

merci encore
a+
0