Interferences avec les magic_quotes

Répondre
maxroucool
le 06/03/2006 à 19:34
maxroucool
Slt tlm,

je viens de me rendre compte que les magic_quotes été activées sur mon server, et je pense que c'est a l'origine de nombreux de me problemes!!

Lorsque je recupere des données par le biais s'un formulaire, j'applique la fonction addslashes. Lorsque je regarde dans ma BDD, les données sont bien de la forme: j\'ai faim .
Seulement, lorsque j'affiche ces données, elle s'affiche aussi de cette facon: j\'ai faim .

Je vois pas d'ou viens le probleme, a quel niveau les magic quotes interferent (si c'est bien a cause d'elles) et comment dois-je faire pour empecher ca?


Merci bp!
+++
bibi
le 06/03/2006 à 22:00
bibi
quand tu as les magic quotes d'activées, tu dois faire un stripslashes() suplémentaire :)
commit suicide
LA GLOBULE
le 06/03/2006 à 22:13
LA GLOBULE
Et le mieux, c'est pas addslashes, mais mysql_escape_string :)

(addslashes est detourné de son utilisation grâce à une permissivité de MySQL qui permet les \ pour protéger les quotes)
bibi
le 06/03/2006 à 22:30
bibi
lol j'ai meme pas lu son message, j'ai juste vu qu'il disait qu'il restait des \ au display
commit suicide
Bzh
le 07/03/2006 à 11:47
Bzh
Préférer "mysql_real_escape_string"=>
Description
string mysql_real_escape_string ( string unescaped_string , resource link_identifier )

mysql_real_escape_string protège les caractères spéciaux de la chaîne unescaped_string , en prenant en compte le jeu de caractères courant de la connexion link_identifier . Le résultat peut être utilisé sans problème avec la fonction mysql_query . Si des données binaires doivent être insérées, cette fonction doit être utilisée.

mysql_real_escape_string appelle la fonction mysql_escape_string de la bibliothèque MySQL qui ajoute un slashe aux caractères suivants : NULL , \x00 , \n , \r , \ , ' , " et \x1a .

Cette fonction doit toujours (avec quelques exceptions) être utilisée pour protéger vos données avant d'envoyer la requête à MySQL.


Mais bibi avait vu juste c'est "stripslashes()" pour rêgler ton problème...

Bye...
maxroucool
le 07/03/2006 à 19:06
maxroucool
Ok merci pour cette fonction mysql_real_escape_string que je ne connaissais pas.

Mais est-ce qu'il y a un moyen de désactivé les magic_quotes sur le server (car je n'ai pas accés au php.ini) car ca me soule d'ajouter un strislshes a chaque fois que j'affiche qqchose ?

Merci bp!
+++
Répondre

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours