Fonction mysql_escape_string et antislash
Fermé
rochdi
-
30 déc. 2009 à 22:40
rescue Messages postés 1039 Date d'inscription vendredi 16 novembre 2007 Statut Contributeur Dernière intervention 27 mars 2019 - 30 déc. 2009 à 23:22
rescue Messages postés 1039 Date d'inscription vendredi 16 novembre 2007 Statut Contributeur Dernière intervention 27 mars 2019 - 30 déc. 2009 à 23:22
Bonjour,
j'ai une page php qui contient un formulaire pour ajouter des données dans une table de ma base de données, et pour assurer la validité des données entrées je viens d'utiliser la fonction mysql_escape_string surtout pour échapper les apostrophes et garder la cohérence du requete sql. la fonction ca marche très bien en local, mais lorsque je transfère les fichiers dans mon site sur internet
je vois que tous les apostrophes se précéder par des antislash, je sais que le problème se produit du fonction mysql_escape_string mais pourquoi pas en local ? et c'est quoi la solution s'il vous plait ?
et merci d'avance pour vos réponses
j'ai une page php qui contient un formulaire pour ajouter des données dans une table de ma base de données, et pour assurer la validité des données entrées je viens d'utiliser la fonction mysql_escape_string surtout pour échapper les apostrophes et garder la cohérence du requete sql. la fonction ca marche très bien en local, mais lorsque je transfère les fichiers dans mon site sur internet
je vois que tous les apostrophes se précéder par des antislash, je sais que le problème se produit du fonction mysql_escape_string mais pourquoi pas en local ? et c'est quoi la solution s'il vous plait ?
et merci d'avance pour vos réponses
A voir également:
- Fonction mysql_escape_string et antislash
- Fonction si et - Guide
- Antislash mac ✓ - Forum MacOS
- Antislash sur mac book air - Forum MacOS
- Antislash - Forum Clavier
- Antislash windows ✓ - Forum Clavier
3 réponses
rescue
Messages postés
1039
Date d'inscription
vendredi 16 novembre 2007
Statut
Contributeur
Dernière intervention
27 mars 2019
136
30 déc. 2009 à 22:55
30 déc. 2009 à 22:55
Bonsoir,
Cette fonction devient dépréciée, ne l'utilisez pas.
À la place, utilisez la fonction mysql_real_escape_string.
Je pense que votre problème vient surtout de la directive magic_quote_gpc.
Si oui ou non elle est activée.
Pour plus de sécurité il vaut mieux qu'elle soit à OFF (désactivée).
Dans les futures versions de PHP notamment la version 6 elle n'existera plus.
La version PHP-5.3 cette directive est à OFF.
Pour résoudre votre problème voici une solution :
Utiliser la fonction stripslashe()s vous supprimerez ainsi tous les antislashes.
@+
Cette fonction devient dépréciée, ne l'utilisez pas.
À la place, utilisez la fonction mysql_real_escape_string.
Je pense que votre problème vient surtout de la directive magic_quote_gpc.
Si oui ou non elle est activée.
Pour plus de sécurité il vaut mieux qu'elle soit à OFF (désactivée).
Dans les futures versions de PHP notamment la version 6 elle n'existera plus.
La version PHP-5.3 cette directive est à OFF.
Pour résoudre votre problème voici une solution :
Utiliser la fonction stripslashe()s vous supprimerez ainsi tous les antislashes.
@+
bonjour pour votre réponse, a propos du fonction stripslashes, j'ai déja penser a utiliser, mais c'est très dure puisque je dois parcourir presque tous le site et a chaque fois je rencontre un select je dois récupérer et utiliser cette fonction, je vais laisser cette possibilité comme une dernière chance,
a propos du magic_quotes il n'y a pas moyen de modifier la configuration sur le site distant puisque en local je n'ai aucun problème.
a propos du magic_quotes il n'y a pas moyen de modifier la configuration sur le site distant puisque en local je n'ai aucun problème.
rescue
Messages postés
1039
Date d'inscription
vendredi 16 novembre 2007
Statut
Contributeur
Dernière intervention
27 mars 2019
136
30 déc. 2009 à 23:22
30 déc. 2009 à 23:22
re,
Avez vous vérifiez si votre configuration que la directive magic_quotes_gpc était à OFF ou à ON ?
C'est dommage de garder une fonction qui deviendra obsolète dans les futures versions de php.
Mieux vaut corrigé de suite que de trainer un boulet vous ajouterez ainsi les stripslashes.
Pour vous répondre depuis un fichier .htaccess que vous placez à la racine du serveur de l'hébergeur vous mettez la ligne ci-dessous :
php_flag magic_quotes_gpc Off
Avez vous vérifiez si votre configuration que la directive magic_quotes_gpc était à OFF ou à ON ?
C'est dommage de garder une fonction qui deviendra obsolète dans les futures versions de php.
Mieux vaut corrigé de suite que de trainer un boulet vous ajouterez ainsi les stripslashes.
Pour vous répondre depuis un fichier .htaccess que vous placez à la racine du serveur de l'hébergeur vous mettez la ligne ci-dessous :
php_flag magic_quotes_gpc Off