如何从创建URL的表单输入中剥离HTML(或其他)

时间:2017-02-08 16:17:01

标签: php forms xss

所以我有一个用于创建URL的简单表单 - 然后在提交操作时将用户带到URL - 这是代码:

<form method="get" class="searchform" action="/srch">
    <label for="s" class="assistive-text"><?php _e('Search'); ?>:</label>
    <input type="text" class="field" name="fwp_general_search" id="s" title="Search Field" placeholder="Enter Terms Here..." />
    <input type="submit" class="submit" id="searchsubmit" title="Search Button" value="Search" />
</form>

效果很好,可以按照预期将用户带到URL。

但是,为了防止某些漏洞,我希望能够删除任何可插入该文本字段的HTML或其他标记。如何从该输入中删除标签?

1 个答案:

答案 0 :(得分:1)

取决于您在后端输入的内容。如果您将它与数据库一起使用,您应该查看准备好的语句以防止SQL注入,如果您还要将输入显示给用户,您将需要考虑通过转义保护输出,使用函数例如htmlspecialchars()strip_tags()等。

PHP还具有帮助进行网址验证的功能,例如https://secure.php.net/manual/en/filter.filters.validate.php