Requete SQL problème avec une cote '

Résolu/Fermé
prosciuto145 Messages postés 92 Date d'inscription dimanche 6 mai 2007 Statut Membre Dernière intervention 7 septembre 2009 - 26 mars 2008 à 10:07
prosciuto145 Messages postés 92 Date d'inscription dimanche 6 mai 2007 Statut Membre Dernière intervention 7 septembre 2009 - 11 juin 2008 à 13:46
Bonjour,
j'ai une requête SQL qui ne fonctionne pas:

$requete = "SELECT * FROM SECTIONS INNER JOIN MENUS ON RefMenu=IdMenu WHERE NomMenu='$NomMenu'";

or dans ce cas précis, $NomMenu vaut "livre d'or" ce qui fait que ma requête devient:

$requete = " SELECT * FROM SECTIONS INNER JOIN MENUS ON RefMenu=IdMenu WHERE NomMenu='livre d' ";

Biensur, le NomMenu livre d n'existe pas, ce qui me créer une erreur.
comment puis-je faire pour empêcher cela ? sachant que je ne peut pas enlever la cote ' par un antislash.

Merci d'avance.

5 réponses

sly-bzh Messages postés 415 Date d'inscription jeudi 10 janvier 2008 Statut Membre Dernière intervention 5 décembre 2009 118
10 juin 2008 à 17:49
Bonsoir,
merci de donner des nouvelles.
Tu aurais aussi pu faire ça je pense que ça aurait marché :
$requete = 'SELECT * FROM SECTIONS INNER JOIN MENUS ON RefMenu=IdMenu WHERE NomMenu="'.$NomMenu.'"'
1
cchristian Messages postés 921 Date d'inscription lundi 21 janvier 2008 Statut Membre Dernière intervention 6 mars 2012 131
26 mars 2008 à 20:08
Bonjour,

Essaie en doublant la cote ..............
0
sly-bzh Messages postés 415 Date d'inscription jeudi 10 janvier 2008 Statut Membre Dernière intervention 5 décembre 2009 118
26 mars 2008 à 20:24
Bonsoir,
Il faut que tu echappe ton apostrophe. Pour cela soit tu n'en a qu'un et tu lui met un \ devant (\'), soit ça peut revenir et dans ce cas là tu utilises une fonction comme mysql_escape_string() par exemple.
Je te conseille la seconde solution plutôt.
0
prosciuto145 Messages postés 92 Date d'inscription dimanche 6 mai 2007 Statut Membre Dernière intervention 7 septembre 2009 24
9 juin 2008 à 21:52
Bonsoir j'ai retrouver ce sujet créer il y a bien lontemps, juste pour dire que la "cote" en question provenait d'une base de donnée donc c'était imposible de l'échaper.
Cependant vu que c'était la seule qui m'embétait j'ai tous simplement réécrit la fonction en faisant un "if = NomMenu='livre d' "....
Voila, bonne soirée.
0

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

Posez votre question
prosciuto145 Messages postés 92 Date d'inscription dimanche 6 mai 2007 Statut Membre Dernière intervention 7 septembre 2009 24
11 juin 2008 à 13:46
C'est tres malin ca ! Merci du conseil, j'y penserais si je retombe sur ce probleme :)
0