如何安全地显示用户提交的文本?

时间:2015-05-17 11:54:15

标签: php html forms validation input

我有一个带有文本字段的表单,用户可以编辑该表单,这将在包含输入文本的网站上创建一个页面。如何确保生成的页面不显示任何恶意内容,没有链接,图像或代码,只显示原始文本?目前来自php我正在使用htmlspecialchars(),当在页面上显示文本时,它在xmp标签内。这样就足够了,还是我应该明确地做一些事情来验证脚本标签等?

编辑:这个问题与建议的问题不同,因为我没有使用sql。

编辑2:我接受了strip_tags。我现在用htmlspecialchars(strip_tags(“input”))验证来自php的用户输入,并在显示时包装在xmp标签中。

2 个答案:

答案 0 :(得分:0)

首先:使用准备好的声明进行数据库存储,更新等...

第二:您应该使用htmlspecialchars()函数转义输出,它只会将特殊字符转换为HTML实体,因此如果您在其中放置一个脚本标记,它将无法运行。

除非您希望用户像在StackOverflow中一样发布代码,否则您可以使用strip_tags()函数作为@ user2182349指出。

答案 1 :(得分:0)

您可以使用strip_tags - 它会删除标记中的所有内容。 http://php.net/manual/en/function.strip-tags.php