当前位置:  开发笔记 > 编程语言 > 正文

防止摧毁utf8字符h_ಠ

如何解决《防止摧毁utf8字符h_ಠ》经验,为你挑选了1个好方法。

我想过滤我的输出,使其更安全的跨站点脚本(XSS)攻击,所以我用htmlentities过滤输出.问题是,我试图使我的应用程序utf8兼容,所以当我输入类似ಠ_ಠ的东西时,我希望在从数据库中检索时进行维护.有没有简单的解决方案来实现这一目标?提前感谢任何建议.



1> Peter Bailey..:

三件事

    HTML清理是输出转义任务,而不是输入过滤.你应该不是在存储之前做这个任务,你应该只做到这一点显示之前.

    如果您试图阻止XSS,则不需要使用htmlentities()- htmlspecialchars()就足够了.htmlentities()仅在尝试从与本机编码不同的字符编码中呈现内容时使用.

    两个 函数都接受字符编码作为第三个参数.

所以,最后:

echo htmlspecialchars( $content, ENT_QUOTES, 'UTF-8' );

如果您使用ENT_NOQUOTES,则可能容易受到某些类型的XSS攻击.

推荐阅读
php
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有