【发布时间】:2011-08-17 15:32:39
【问题描述】:
我有一个通过 GET 提交的表单,其中一个隐藏字段提交了一个类别 ID 列表,以逗号 (1,2,3) 分隔。
当 get 查询到达它要去的页面时,逗号变成%2C 转义。
我无法对解析这些值的 PHP 进行更改,它们必须保留逗号。
总而言之:?category=1,2,3 有效,?category=1%2C2%2C3 无效。
如何防止逗号被编码?
编辑以解决评论,简化,但为您提供要点:
<form method="get" action="something.php">
<input type="hidden" name="category" value="1,2,3">
<input type="submit">
</form>
【问题讨论】:
-
你是如何形成查询的,提交是如何完成的?
-
不能使用post,web服务只需要GET。
-
网络服务写得不好。更改为表单标记的 onsubmit 方法以创建您的查询字符串和 window.open 或 window.location.href 它。