Php 有两张自动提交的表格

Php 有两张自动提交的表格,php,forms,Php,Forms,我是否可以在一个页面上有两个自行提交的表格。如果是,如何为每个表单分配不同的代码块?将第一个表单命名为表单一,第二个表单命名为表单二 <?php if (isset($_POST['form_one'])) { // First form was submitted } if (isset($_POST['form_two'])) { // Second form was submitted } ?> 两个表单可以放置在一个代码中,方法是为它们指定不同的名称并将

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

将第一个表单命名为表单一,第二个表单命名为表单二

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

if (isset($_POST['form_two'])) {
    // Second form was submitted
}
?>


两个表单可以放置在一个代码中,方法是为它们指定不同的名称并将其目标保持为空

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

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

<form action="" ...>
<input type="hidden" name="form_no" value="1">
...
</form>
使用
isset($\u请求['form0'])
进行区分

<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
}
?>

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

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

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

名字:
姓氏:
名字:
姓氏:
在本例中,每个表单都指定了不同的脚本,但请记住,您可以对两个操作使用相同的php文件,为每个表单指定不同的代码块(这是上面的php部分)


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

什么是“自我提交表单”?@EmilVikström Probaply action=“”?我有一个疑问。你在动作部分说了两个不同的名字。他们正在提交两个不同的页面。那这是怎么回事?
<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
}
?>