0

我有一个表单字段,我将查询字符串插入其中。

只要对它进行 urldecode,就可以对其进行清理,然后我将其放入 htmlentities 中,这样它就不会创建有缺陷的 HTML。

换句话说:

<input type="text" name="example" value="<?php echo htmlentities((urldecode($_GET["example"])); ?>" />

urldecode将加号转换为空格,但是有人可能希望在他们的查询中使用真正的加号。

两个问题:

  1. 就注射等而言,上述“安全”是否足够?
  2. 是否有替代方案urldecode不会转换正版加号
4

1 回答 1

0

数组中的字符串$_GET已经进行了 urldecode。你不应该再做一次。

另一方面,如果您真的想在查询字符串中插入加号,则应先对其进行 urlencode。

于 2011-11-29T22:14:44.590 回答