0

我有一个使用 GET 方法的表单,并且我正在使用 action 方法来传递一些 URL 变量:

<form action="items.php?a=1&b=2" method="get">...</form>

items.php$_REQUEST用来解析 a,b vars 的内容,但除非我在表单中使用 POST 作为方法,否则变量显示为空或不存在。

我已经阅读了 POST、GET、REQUEST 之间的区别,但我不确定如何解决这个问题。我需要使用 GET 的表单,以便它缓存结果,当用户选择结果然后在浏览器中单击返回时,他会返回结果集。

4

5 回答 5

6

首先,form 会从请求中删除变量 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
于 2012-11-08T12:03:11.617 回答
2

将方法切换为 POST。

现在您将能够检索两者。

-> 通过 $_GET 查找查询参数。

-> 通过 $_POST 找到 POST 参数

帮自己一个忙,永远不要回头看那个怪物 $_REQUEST。

于 2012-11-08T11:59:16.383 回答
1

I think you should use $_GET instead of $_REQUEST.

For example:

$myVar = $_GET['a'];
$myVar2 = $_GET['b'];
于 2012-11-08T11:58:04.780 回答
1

要查看 $_GET 表单的输出变量:

print_r($_GET);

只需使用以下命令访问变量:

$a = $_GET['a'];
$b = $_GET['b'];
于 2012-11-08T11:58:37.890 回答
1

在你的 from.... 中使用它作为隐藏字段

 <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']

于 2012-11-08T12:01:26.927 回答