Téléchargement
illégal
Posez votre question Signaler

Erreur avec apostrophe dans le texte (mysql)

t671 461Messages postés 25 février 2008Date d'inscription 21 mai 2012Dernière intervention - Dernière réponse le 21 déc. 2010 à 11:24
Bonjour,
Je saisi un texte via un formulaire, et au moment de l'enregistrement dans la base j'ai :
Erreur SQL !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 'Alsace - 12/12/2010', '9')' at line 1
qui correspond à la ligne :
$sql2 = "INSERT INTO article(idliaison, article, nom, lien, commentaire, doublon) VALUES('$id', '$fichier', '$fic[0]', '$dossier$fichier', '$texte', '$doublon3')";

Après plusieurs tests, le problème vient de ce que devant le mot "Alsace" j'ai une apostrophe ("d'Alsace").
J'ai donc essayé plusieurs combinaisons avant l'enregistrement dans la base :
$texte = addslashes($texte);
ou
$texte = mysql_real_escape_string($texte);
ou
$texte = stripslashes($texte);
Mais rien n'y fait ....... !!!!!!!
Comment faire ????
Merci de m'aider !
Lire la suite 

Erreur avec apostrophe dans le texte (mysql) »

5 réponses
Réponse
+2
moins plus
Re ,

En fait , l'apostrophe est un caractère permettant d'identifier les chaines de caractères en SQL. Donc lorsque tu met une apostrophe tu fermes l'identification. Et le reste après est mal interprété. Si tu met deux apostrophes tu fermes et tu ré ouvre l'identification. Et j'avais éditer mon message précèdent mais ca ne l'a pas fait , j'ai du mal cliqué. Essaye cela :

$sql2 = 'INSERT INTO article(idliaison, article, nom, lien, commentaire, doublon) VALUES(:id, :fichier,:fic[0], :dossier,:fichier, :texte, :doublon3)';

Est ce ok avec ceci ?
Ajouter un commentaire
Réponse
+0
moins plus
Essaye de doubler l'apostrophe dans ta requête comme ceci :

$sql2 = "INSERT INTO article(idliaison, article, nom, lien, commentaire, doublon) VALUES("$id", "$fichier","$fic[0]", "$dossier$fichier", "$texte", "$doublon3")";

Voila , normalement , ca devrait marcher.
Ajouter un commentaire
Réponse
+0
moins plus
Ca fonctionne pas. J'ai un "Syntaxe error .........."
t671- 20 déc. 2010 à 19:07
Je viens de tester avec une autre phrase comportant une apostrophe, et là, ça fonctionne : "Soutenue par quelques amis et par l'Office des Sports"
La première phrase était : "Article Dernières Nouvelles d'Alsace"

Comment cela se fait-il ?
Ajouter un commentaire
Réponse
+0
moins plus
J'ai ce message en résultat :

Erreur SQL !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 ':id, :fichier,:fic[0], :dossier,:fichier, :texte, :doublon3)' at line 1

Mais comme je fais des tests en local, faut que je test en on-line ..... Cela devrait peut-être aller mieux .... ???
Ajouter un commentaire
Ce document intitulé « Erreur avec apostrophe dans le texte (mysql) » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?