Énigme "Slash Before Every Quote"
Vous avez rencontré un problème particulier dans votre script PHP : chaque fois qu'un formulaire est soumis à lui-même avec une valeur contenant des guillemets doubles, il ajoute une barre oblique inverse avant chacun. Ce comportement est attribué à la fameuse fonctionnalité « guillemets magiques » de PHP.
Les guillemets magiques échappent automatiquement à certains caractères, y compris les guillemets doubles, pour empêcher les injections malveillantes. Bien que cela puisse ressembler à une mesure de sécurité, cela peut également provoquer des problèmes comme celui que vous rencontrez.
Pour résoudre ce problème, intégrez l'extrait de code suivant dans votre script :
if (get_magic_quotes_gpc()) {
$your_text = stripslashes($your_text);
}
La fonction get_magic_quotes_gpc() vérifie si les guillemets magiques sont activés. Si tel est le cas, la fonction stripslashes() supprime les barres obliques inverses supplémentaires de votre texte.
Risques liés à la désactivation des citations magiques
Vous avez indiqué que vous disposez d'un accès root à votre serveur et envisagent de désactiver les guillemets magiques. Il est important d'être conscient des risques potentiels :
Conclusion
Bien que la désactivation des guillemets magiques puisse résoudre votre problème actuel, il est Il est crucial de mettre en œuvre des pratiques robustes de validation des entrées et d’assainissement pour prévenir les failles de sécurité. Pesez soigneusement les risques potentiels avant de prendre cette décision et assurez-vous que votre code est toujours sécurisé quel que soit le statut des guillemets magiques.
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3