PHP 5.4替换[在参数中使用specialchars

时间:2014-03-27 11:33:38

标签: php

我正在开发一个xtCommerce商店,它似乎与PHP 5.4有问题(至少它在较低版本之前运行良好)。 当前的问题是,PHP似乎用specialchars替换了id的括号示例:

<form method="get">
    <input type="checkbox" value="1234" name="ids[]"></input>
</form>

发送print_r($_GET)时显示: [ids%5B%5D] => 1234

我以前没见过这个,有人伸出援手吗?

另一个例子: 来自多个

<select name="group_name[5933]">
    <option value="1"></option>
</select>

print_r($_GET)显示:

[group_name%5B5933%5D] => 1
[group_name%5B5934%5D] => 1
[group_name%5B5940%5D] => 1
[group_name%5B61432%5D] => 1
[group_name%5B61576%5D] => 1
[group_name%5B61598%5D] => 1
[group_name%5B62579%5D] => 1
[group_name%5B90287%5D] => 1
[group_name%5B90288%5D] => 1
[group_name%5B103035%5D] => 1
[group_name%5B109678%5D] => 1

第三个例子,不同的页面,帖子:

    <form method="post" action="http://xxxx/admin/cross_sell_groups.php?page=1&action=insert" name="status">
<input type="text" name="cross_sell_group_name[2]"></input>
</form>

这里的$ _POST只是空的,只设置$ _GET。

1 个答案:

答案 0 :(得分:0)

这似乎更像是一些JavaScript应该归咎于此。如果您的表单是通过AJAX提交的,请查看。

如果我错了,这不是一个AJAX表单,可能是PHP配置错误,或者你有一个旧版本的PHP,但我会说AJAX更容易出错。