我是否可以在一个页面上有两个自提交表单。如果是,我如何为每个表单分配不同的代码块?
答案 0 :(得分: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']
区分。
答案 1 :(得分:0)
将您的第一个表单命名为form_one,将第二个表单命名为form_two。
<?php
if (isset($_POST['form_one'])) {
// First form was submitted
}
if (isset($_POST['form_two'])) {
// Second form was submitted
}
?>
答案 2 :(得分:0)
可以通过为代码提供不同的名称并保留其目标_blank
,将两个表单放在代码中答案 3 :(得分: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部分)。
有人可能会有更好的答案,但这种方法过去对我有好处。