表单输入传递参数到错误的URL

时间:2013-11-18 15:08:58

标签: php html forms input

我正在尝试让我的表单将参数传递给这样的链接:

index.php?action=2&parameter=value

相反,它所做的就是传递这样的参数:

index.php?parameter=value

这是我的代码:

<form class="navbar-form navbar-left" action="index.php?action=2" method="get" name="search">
  <div class="form-group">
      <input type="text" class="form-control" placeholder="put something here...." name="search" width="100">
  </div>
  <button type="submit" class="btn btn-default">search</button>
</form>

表单位于我的index.php?action = 2模板中,但是将参数传递回原始的index.php文件而不是index.php?action = 2 file。

我想稍后将该参数用作$ _GET,其中包含更多参数,以便对从DB中获取的数据进行搜索和排序。我编写的DB php代码工作得很好,当我自己创建链接时,一切都很好,但是当我尝试在文本框中键入搜索值时不会出现这种情况。

我该如何避免?

提前致谢!

编辑:

我的index.php文件中有一个开关:

    case 2:
    include "_template/__test.php";
    break;

我的表单位于上面的__test.php文件中。

1 个答案:

答案 0 :(得分:1)

您尝试做的事情可以通过使用隐藏字段来完成。在表单中添加以下输入字段:

<input type="hidden" name="action" value="<?php echo $_GET['action']; ?>" />

因此,当您传递action参数时,它将生成一个带有已发送值($_GET['action'])的输入字段,并在提交表单时传递给PHP脚本。