我有一个表单字段,我将查询字符串插入其中。
只要对它进行 urldecode,就可以对其进行清理,然后我将其放入 htmlentities 中,这样它就不会创建有缺陷的 HTML。
换句话说:
<input type="text" name="example" value="<?php echo htmlentities((urldecode($_GET["example"])); ?>" />
urldecode
将加号转换为空格,但是有人可能希望在他们的查询中使用真正的加号。
两个问题:
- 就注射等而言,上述“安全”是否足够?
- 是否有替代方案
urldecode
不会转换正版加号