PHP / PhpMyAdmin et les apostrophes
Résolu
nik029
Messages postés
281
Date d'inscription
Statut
Membre
Dernière intervention
-
nik029 Messages postés 281 Date d'inscription Statut Membre Dernière intervention -
nik029 Messages postés 281 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai réaliser un petit script où un utilisateur rentre un texte. Il clique sur un bouton "enregistrer", et son texte est directement envoyé sur ma base de donnée (PhpMyAdmin). Le problème, c'est quand le texte contient des apostrophes ou des guillemets, le texte ne s'envoie pas sur la base de donnée est affiché plutôt à l'utilisateur : 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', '')' at line 1
Comment régler ce problème?
Merci d'avance.
J'ai réaliser un petit script où un utilisateur rentre un texte. Il clique sur un bouton "enregistrer", et son texte est directement envoyé sur ma base de donnée (PhpMyAdmin). Le problème, c'est quand le texte contient des apostrophes ou des guillemets, le texte ne s'envoie pas sur la base de donnée est affiché plutôt à l'utilisateur : 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', '')' at line 1
Comment régler ce problème?
Merci d'avance.
A voir également:
- PHP / PhpMyAdmin et les apostrophes
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Phpmyadmin ovh - Forum PHP
- Clé étrangère phpmyadmin ✓ - Forum MySQL
- Localhost/phpmyadmin ✓ - Forum PHP
5 réponses
C'est aux données qu'il faut appliquer la fonction, car c'est dans les données que les apostrophes peuvent poser des problèmes.
De plus, je ne vous pas d'où viennent tes variables $slider et $slide, ni où elles vont.
Ce n'est peut-être pas nécessaire de le faire sur tous les champs, si tu as fait suffisamment de contrôles dessus et que tu es sûr qu'il n'y a pas d'apostrophes.
De plus, je ne vous pas d'où viennent tes variables $slider et $slide, ni où elles vont.
$date=mysql_real_escape_string($date); $title=mysql_real_escape_string($title); ... $sql="INSERT INTO slider (date, title, content, img, texteurl, url) VALUES ('$date', '$title', '$content', '$img', '$texteurl', '$url')";
Ce n'est peut-être pas nécessaire de le faire sur tous les champs, si tu as fait suffisamment de contrôles dessus et que tu es sûr qu'il n'y a pas d'apostrophes.
Bonjour
Il faut utiliser la fonction mysql_real_escape_string, qui protège les apostrophes... et un peu plus. Elle est faite exprès pour ça, contrairement aux addslashes et autres bricolages.
Il faut utiliser la fonction mysql_real_escape_string, qui protège les apostrophes... et un peu plus. Elle est faite exprès pour ça, contrairement aux addslashes et autres bricolages.
$texte="je t'aime"; $texte=mysql_real_escape_string($texte); mysql_query ("INSERT INTO matable (message) VALUES('$texte')");
Est-ce que ça c'est bon ? :
EDIT : Je viens d'essayer et ça ne marche pas.
$connect=mysql_connect('localhost','root', ''); mysql_select_db('slider'); $slider=mysql_real_escape_string($slide); $sql="INSERT INTO slider (date, title, content, img, texteurl, url) VALUES ('$date', '$title', '$content', '$img', '$texteurl', '$url')"; $requete=mysql_query($sql) or die(mysql_error());
EDIT : Je viens d'essayer et ça ne marche pas.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question