|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre régulier
![]() Inscription : mars 2006 Messages : 168 ![]() |
Bonjour,
j'ai un formulaire de recherche par mots clef et j'ai ajouté addslashes pour gérer les caractères spéciaux Code :
$_SESSION['motsclef'] = addslashes($_POST['motsclef']) ; Code :
SELECT count(*) FROM guide were public LIKE '%personne âgée%' AND (s_nom LIKE '%d\'alzheimer%' OR specifique LIKE '%d\'alzheimer%') Je ne comprends pas du tout pourquoi j'ai 0 résultat, merci à ceux qui pourront m'aider.
__________________
En essayant continuellement on finit par réussir. Donc : plus ca rate, plus on a des chances que ca marche. Shadocks. un seul header par page, et pour les autres redirections : echo "<script language='javascript'>window.location.href='XXX.php'</script>"; |
|
|
00
|
|
|
#2 | ||
![]() ![]() Josselin Développeur Web Inscription : janvier 2004 Messages : 9 050 ![]() |
Au lieu d'utiliser les simples quotes pour les chaînes de ta requête tu peux utiliser \" ce qui te donnera :
Code :
|
||
|
|
00
|
|
|
#3 |
|
Expert Confirmé Sénior
![]() Inscription : septembre 2004 Messages : 5 421 ![]() |
Il y a un problème : il ne devrait pas y avoir de slash superflu dans ta base !
Une base de donnée devrait contenir exactement ce qu'à saisit l'utilisateur. Il s'aisit alors dans phpMyAdmin (ou autre) je devrais voir pas l\'arbre ni autre bizzarrerie. Que vaut le parametre magic_quotes_gpc dans ton phpinfo ? |
|
|
00
|
|
|
#4 |
|
Membre régulier
![]() Inscription : mars 2006 Messages : 168 ![]() |
magic quote est sur on.
pour les \ intégrés, je ne sais plus pourquoi j'en suis arrivée là, mais c'était réfléchi > bisounours je vais voir, merci
__________________
En essayant continuellement on finit par réussir. Donc : plus ca rate, plus on a des chances que ca marche. Shadocks. un seul header par page, et pour les autres redirections : echo "<script language='javascript'>window.location.href='XXX.php'</script>"; |
|
|
00
|
|
|
#5 |
|
Expert Confirmé Sénior
![]() Inscription : septembre 2004 Messages : 5 421 ![]() |
Soit tu passes ce flag à off, soit tu fais en sortes de travailler avec des chaines naturelles dans tes scripts. Du genre :
Code :
get_magic_quotes_gpc() ? stripslashes($variable_de_requete) : $variable_de_requete |
|
|
00
|
|
|
#6 |
|
Membre régulier
![]() Inscription : mars 2006 Messages : 168 ![]() |
Merci de ta réponse, mais elle n'est pas claire pour moi
soit je mets les magic quote à off soit je fais stripslashes($variable_de_requete) pour enlever le \ mis par le magic quote quand il est à on, c'est ca ? et ensuite je rajoute mysql_real_escape_string avant l'intégration en base de données ? Mais dans ce cas, j'aurais quand même des \ dans ma base de données non ? Merci de ton aide, ce point est vraiment très confus pour moi (comment ca, ca se voit !?) et je pensais que les \ en bdd était une sécurité nécessaire, on le voit dans un nombre de tutorial très important
__________________
En essayant continuellement on finit par réussir. Donc : plus ca rate, plus on a des chances que ca marche. Shadocks. un seul header par page, et pour les autres redirections : echo "<script language='javascript'>window.location.href='XXX.php'</script>"; |
|
|
00
|
|
|
#7 | ||||
|
Expert Confirmé Sénior
![]() Inscription : septembre 2004 Messages : 5 421 ![]() |
Citation:
Citation:
Citation:
Citation:
mysql_real_escape_string permet d'échapper les caractères spéciaux qui pourrait faire foirer une requete sur MySQL. Par exemple si tu fait : Ce qui sera transmis à ton client sera L'avion et pas L\'avion C'est pareil pour les bases de données... Il est important de garder les données le plus naturelles possibles afin de faciliter : - l'édition de ces données - la recherche |
||||
|
|
00
|
|
|
#8 |
|
Membre régulier
![]() Inscription : mars 2006 Messages : 168 ![]() |
merci, je comprends mieux ce que je n'avais pas compris.
Tu connais un bon tuto pour mettre les magic quote à off ? je peux le faire une seule fois ou c'est sur chaque page ?
__________________
En essayant continuellement on finit par réussir. Donc : plus ca rate, plus on a des chances que ca marche. Shadocks. un seul header par page, et pour les autres redirections : echo "<script language='javascript'>window.location.href='XXX.php'</script>"; |
|
|
00
|
|
|
#9 |
|
Expert Confirmé Sénior
![]() Inscription : septembre 2004 Messages : 5 421 ![]() |
C'est là que le bât blesse. C'est une config php à modifier dans le php.ini
Or suivant où se trouve ton serveur de production, tu ne pourras pas le modifier. Il ne te reste alors plus que les directives apache via un fichier .htaccess si ton hébergeur l'accepte. Sinon c'est cuit. Il n'est pas possible de modifier ce flag dans un script. Donc à toi de nous en dire plus sur ton environnement. |
|
|
00
|
|
|
#10 |
|
Membre régulier
![]() Inscription : mars 2006 Messages : 168 ![]() |
je vois avec mon hébergeur pour modifier éventuellement le php.ini.
Merci beaucoup.
__________________
En essayant continuellement on finit par réussir. Donc : plus ca rate, plus on a des chances que ca marche. Shadocks. un seul header par page, et pour les autres redirections : echo "<script language='javascript'>window.location.href='XXX.php'</script>"; |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com