0

我是否可以在一个页面上有两个自我提交的表单。如果是,我如何为每个表单分配不同的代码块?

4

4 回答 4

1

有一个具有两个不同值的隐藏输入。

<form action="" ...>
<input type="hidden" name="form_no" value="0">
...
</form>

<form action="" ...>
<input type="hidden" name="form_no" value="1">
...
</form>

在服务器端,根据不同$_REQUEST['form_no']


或者您也可以将其作为名称参数添加到提交元素中。

<input type="submit" name="form0">

用来isset($_REQUEST['form0'])区分。


另一种方法是附加一个 GET 参数来区分

<form action="<?php echo $_SERVER['PHP_SELF'];?>?form_no=0" ...>
...
</form>

<form action="<?php echo $_SERVER['PHP_SELF'];?>?form_no=1" ...>
...
</form>

用来$_GET['form_no']区分。

于 2012-06-21T14:17:16.400 回答
0
<form action="action.asp" method="get">
  First name: <input type="text" name="fname" /><br />
  Last name: <input type="text" name="lname" /><br />
 <input type="submit" name="submit1" value="Submit" />
</form>

<form action="action.asp" method="get">
  First name: <input type="text" name="fname" /><br />
  Last name: <input type="text" name="lname" /><br />
 <input type="submit" name="submit2" value="Submit" />
</form>

<?php

if(isset($_GET['submit1'])){
// first form was submitted
}

if(isset($_GET['submit2'])){
// second form was submitted
}
?>

在此示例中,每个表单都指定了不同的脚本,但请记住,您可以简单地对两个操作使用相同的 php 文件,为每个表单指定不同的代码块(即上面的 php 部分)。

有人可能有更好的答案,但这种方法在过去对我很有帮助。

于 2012-06-21T14:32:26.800 回答
0

将您的第一个表单命名为 form_one,将第二个表单命名为 form_two。

<?php
if (isset($_POST['form_one'])) {
    // First form was submitted
}

if (isset($_POST['form_two'])) {
    // Second form was submitted
}
?>
于 2012-06-21T14:15:39.757 回答
0

通过给它们不同的名称并保持它们的目标_blank,可以将两种形式放置在代码中

于 2012-06-21T14:16:29.133 回答