首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >在输入时使用htmlspecialchars,然后在输出中使用htmlentities,这是多余的吗?

在输入时使用htmlspecialchars,然后在输出中使用htmlentities,这是多余的吗?
EN

Stack Overflow用户
提问于 2015-12-01 04:21:08
回答 1查看 294关注 0票数 1

我被告知我的数据库的输出是基于输出的双重转义的,比如' " <

那么,对于insert使用htmlspecialchars($content_to_escape, ENT_QUOTES),然后使用echo htmlentities($content_to_echo);是多余的吗?

EN

回答 1

Stack Overflow用户

发布于 2015-12-02 16:56:46

按照给定的方式将输入存储在数据库中。

或者,您可以在服务器端验证输入以禁止某些字符。例如,对于街道名称,您可能只允许字母数字和-<space>'字符。

但是,为了防止XSS,重点应该放在输出编码上。每次输出时都使用HTML编码函数。当你需要输出到另一个上下文(例如,JavaScript的十六进制实体编码,JSON编码等)时,在你的数据库中存储原始输入会使事情变得更简单(因此也更安全)。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34007295

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档