0

1つのページに2つの自己送信フォームを含めることはできますか?はいの場合、各フォームに異なるコードブロックを割り当てるにはどうすればよいですか?

4

4 に答える 4

1

2つの異なる値を持つ非表示の入力があります。

<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']


または、submit要素のnameパラメーターとして追加することもできます。

<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_one、2番目のフォームに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

2つのフォームに異なる名前を付け、ターゲットを_blankに保つことで、2つのフォームをコードに配置できます。

于 2012-06-21T14:16:29.133 に答える
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 に答える