我知道这个话题已经被广泛讨论了,因为我已经阅读了超过15篇关于这个主题的文章,但仍然无法找到我的问题的答案。PHP消毒输入
我正在寻找一个函数来清理表单中的数据。绝对没有HTML是可以接受的,我该如何去转义所有的html实体,这样用户绝对不会注入任何东西?我不需要白名单,因为不允许输入HTML。
此外,没有必要运行mysql_real_escape_string,因为我不使用MySQL数据库。我使用MongoDB。我只是存储名字,姓氏,电话号码,基本的东西。没有HTML。但我仍然不希望用户能够输入<script>whatever</script>
作为他们的名字,当它显示回给他们时,它会解析它。
我想过HTML Purifier和htmLAWED但他们似乎太多,我想要做的事情。我只是建立一个花哨的preg_replace函数?
这不就是为什么你应该消毒用户在HTML中显示之前提供的东西吗?也就是说:<?php echo htmlentities($ somethingUserGaveme); ?> – thatidiotguy