mysql_real_escape_string()
n'ajoute pas de barres obliques à stockées. Il échappe les caractères afin qu'ils puissent être transmis en toute sécurité à travers le moteur mysql. Les données sont stockées telles quelles, sans barres obliques.
En tant que tel, vous n'avez pas besoin d'utiliser stripslashes()
lors de la sortie de la base de données des données échappées avec eux.
Si vous voyez des barres obliques supplémentaires, c'est parce que vous les ajoutez quelque part, par exemple addslashes()
ou magic_quotes_gpc()
est activé. Comme il a été noté, les échappées ne sont pas des sauts de ligne. N'utilisez que stripslashes()
sur les données contenant des barres obliques d'échappement ou risquez de supprimer les barres obliques essentielles.
Sous la direction d'ajouter: La seule fois où vous voudriez supprimer les slash de mysql_real_escape_string()
est si vous l'avez fait avant le stockage de données, dire si pour une raison quelconque les données évadé la minute où vous avez obtenu une forme puis fit écho sur dans un message d'erreur/champ de formulaire pré-rempli.
* La seule fois où vous voudriez supprimer les barres obliques de 'mysql_real_escape_string()' est ... * Ne faites pas ça. mysql_real_escape_string() 'ne doit être utilisé que juste avant l'interrogation, car il est exécuté spécifiquement pour la connexion à la base de données active. Utilisez un échappement/désinfectant différent si vous avez besoin de ce type de fonctionnalité ailleurs dans votre code. – cbednarski