0

这可能是一个非常简单的问题,但它很早,所以是的......

基本上我有一个表格:

<form name="varsForm" action="step2.php" id="formID" method="post">

正如我所理解的那样,我创建了一些隐藏变量。如下:

<input type="hidden" id="typeid" name="typeid" value="1" />

因为 step2.php 被设置为一个动作,我虽然假设隐藏变量将被传递给 step2.php 是正确的。但是,当我尝试打电话给他们时,我遇到了错误。我尝试简单地调用它们,如下所示:

<?php echo $_GET['typeid']; ?>

但它说 caseid 是一个未定义的索引,我假设我没有正确调用它,有人请把我说对了吗?

4

7 回答 7

3

您正在通过POST方法提交表单,请尝试$_POST['typeid'];

或者将方法更改为GET.

于 2012-10-12T08:51:22.047 回答
2

您在发布信息时正在使用该$_GET数组。

您应该使用$_POST数组,甚至是$_REQUEST同时处理 POST 和 GET 的数组。

于 2012-10-12T08:52:47.317 回答
2

由于您在表单中使用 method="post" ,因此您应该使用

<?php echo $_POST['typeid']; ?>

当您使用 HTTP GET 方法(form 标签中的method="get")时,使用 PHP 中的 $_GET。

于 2012-10-12T08:51:50.203 回答
1

你正在使用method="post",所以看看 $_POST :)

<?php echo $_POST['typeid']; ?>

高温高压

于 2012-10-12T08:52:30.313 回答
1

由于您使用的是 HTTPPOST方法,因此您<form>需要将代码提供为:

<?php echo $_POST['typeid']; ?>

否则,在 HTML 中更改:

<form method="get">
于 2012-10-12T08:52:48.100 回答
1

您已经method="post"将数据放置在消息正文中,而不是查询字符串中。它将可以通过$_POSTnot访问$_GET

于 2012-10-12T08:51:28.743 回答
1

您将表单中的方法属性设置为 POST,因此传递给 step2.php 的值在 $_GET 中不可用,它将在 $_POST 中可用,因此要访问您需要使用的值 $_POST['typeid'] 。

并且有时为了避免有关索引的警告或通知(例如未定义的索引),您可以先检查其是否存在,然后再处理

有些像这样

if (array_key_exists('typeid', $_POST) )
{
     $typeid = $_POST['type_id'];
    // And do what ever you want to do with this value 
}
于 2012-10-12T08:58:16.943 回答