我有一个使用GET方法的表单,我也使用action方法传递一些URL变量:
<form action="items.php?a=1&b=2" method="get">...</form>
在 items.php
中,我使用$_REQUEST
来解析a,b变量的内容,但除非我在表单中使用POST作为方法,否则变量显示为空或非存在的。
我已经了解了POST,GET,REQUEST之间的区别,但我不确定如何解决这个问题。我需要使用表单来使用GET以便缓存结果,当用户选择结果然后在浏览器中单击时,他将返回结果集。
答案 0 :(得分:5)
首先,表单将从请求中删除变量a和b。要将它们添加到GET请求中,请使用以下内容:
<form action="index.php" method="get" >
<input type="hidden" name="a" value="1" />
<input type="hidden" name="b" value="2" />
....
</form>
从php您可以使用$_GET
访问这些变量,例如:
$_GET['a'] // 1
答案 1 :(得分:2)
将方法切换为POST。
现在您将能够同时检索。
- &GT;通过$ _GET查找查询参数。
- &GT;通过$ _POST
查找POST参数并帮自己一个忙,永远不要回头看那个怪物$ _REQUEST。
答案 2 :(得分:1)
我认为你应该使用$ _GET而不是$ _REQUEST。
例如:
$myVar = $_GET['a'];
$myVar2 = $_GET['b'];
答案 3 :(得分:1)
要查看$ _GET表单的输出变量:
print_r($_GET);
只需使用以下内容访问vars:
$a = $_GET['a'];
$b = $_GET['b'];
答案 4 :(得分:1)
在你的......中使用它,a,b变种的使用内容为隐藏字段
<form action="items.php" method="get">
...
<input type="hidden" name="a" value="1" />
<input type="hidden" name="b" value="2" />
</form>
并将变量设为$_GET['a']
,$_GET['b']