Si vous obtenez vos données $content à partir d'un formulaire (et non "tel quel" dans le code PHP) , vous rencontrez peut-être un problème à cause des guillemets Magic (voir magic_quotes_gpc
)
En gros :
Si les guillemets magiques sont activés (vous pouvez vérifier cela dans la sortie de phpinfo()
, par exemple) , vous obtiendrez ce genre de "double échappement" :
- Ces caractères seront échappés une fois par des guillemets magiques,
- Et, ensuite, ils seront échappés une seconde fois par
mysql_real_escape_string
La bonne solution, dans ce cas, est de ne pas arrêter d'utiliser mysql_real_escape_string
, mais pour désactiver magic_quotes_gpc dans votre configuration...
... Mais, comme vous n'y avez pas accès, vous devrez en fait "inverser" l'effet des guillemets magiques, en appelant stripslashes
sur l'entrée que vous obtenez comme $_GET
et $_POST
, avant de commencer à l'utiliser.
Note :c'est un conseil qui est donné sur la page de manuel de mysql_real_escape_string
(citant) :