Maison  >  Article  >  base de données  >  Comment gérer les échappements Slash dans les guillemets doubles soumis via des formulaires PHP ?

Comment gérer les échappements Slash dans les guillemets doubles soumis via des formulaires PHP ?

Susan Sarandon
Susan Sarandonoriginal
2024-11-23 06:31:10917parcourir

How to Handle Slash Escapes in Double Quotes Submitted via PHP Forms?

Problème : des citations apparaissent avec des échappements Slash

Lors de la soumission d'un formulaire à lui-même en PHP, les guillemets doubles dans les données du formulaire sont préfixés par une barre oblique () lorsque les guillemets magiques sont activés. Cela peut entraîner l'affichage de caractères inattendus sur la page.

Réponse :

Ce problème est dû à des guillemets magiques, à une configuration PHP qui protège contre l'injection SQL et d'autres vulnérabilités en convertissant les guillemets en formes échappées. Pour résoudre ce problème :

  1. Vérifier l'état des citations magiques : Utilisez get_magic_quotes_gpc() pour vérifier si les citations magiques sont activées.
  2. Désactiver les citations magiques : Si les guillemets magiques sont activés, désactivez-les à l'aide du fichier de configuration php.ini ou consultez votre hébergeur pour modifier cela paramètre.
  3. Utiliser stripslashes() : Si la désactivation des guillemets magiques n'est pas une option, utilisez stripslashes() pour supprimer les barres obliques du texte concerné :
if (get_magic_quotes_gpc()) {
    $your_text = stripslashes($your_text);
}

Cela restaurera les guillemets doubles dans leur forme originale, leur permettant d'être affichés correctement.

Considérations :

La désactivation des guillemets magiques peut rendre votre application plus vulnérable aux attaques par injection SQL si elle n'est pas mise en œuvre avec soin. Cependant, il est généralement recommandé de désactiver les guillemets magiques pour une meilleure maintenabilité du code et des pratiques de sécurité.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn