• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:FORMタグの中の2つのボタンの処理について)

FORMタグの中の2つのボタンの処理について

このQ&Aのポイント
  • PHPを使ったWebページで、FORMタグ内に2つのボタンを配置し、ボタンが押された時にそれぞれのフレームの内容を更新する処理を実装したいです。
  • 具体的には、ボタン1が押された場合には下側のフレームの内容を、ボタン2が押された場合には上側のフレームの内容を書き換えたいです。
  • 現在は下側のフレームの更新処理は実装できていますが、上側のフレームの更新処理の実装方法がわかりません。どのように記述すればいいですか?

質問者が選んだベストアンサー

  • ベストアンサー
  • agunuz
  • ベストアンサー率65% (288/438)
回答No.1

データがPOSTされてからはどうしようもありません。 押されたボタンによってform要素のtarget属性(送信先の「フレーム名」)を書き替えてからPOSTするようにJavaScriptで処理することになります。

kevin67
質問者

補足

ご回答、ありがとうございます。 ご記入いただいた【押されたボタンによってform要素のtarget属性(送信先の「フレーム名」)を書き替えてからPOSTするようにJavaScriptで処理することになります。】が具体的に何を意味するのかは理解できなかったのですが、以下のような方法を思いついて、とりあえず、うまく動いています。 <BODY onload="document.FRM.submit();"> <?php if ($_POST[Button_1]) { 下側のフレームの更新処理に関わる部分 } elseif ($_POST[Button_2) { // 要するに、一度、別のデータで受けて、再び、POSTする。 $DATA_1 = $_POST["INPUT_1"]; $DATA_2 = $_POST["INPUT_2"]; $DATA_3 = $_POST["INPUT_3"]; ?> <FORM Name="FRM" METHOD="POST" action="upper.php" target="upper"> <INPUT TYPE="hidden" NAME="INPUT_1" VALUE="<?php echo $DATA_1; ?>" > <INPUT TYPE="hidden" NAME="INPUT_2" VALUE="<?php echo $DATA_2; ?>" > <INPUT TYPE="hidden" NAME="INPUT_3" VALUE="<?php echo $DATA_3; ?>" > </FORM> } ?> <form action="<?=$_SERVER['PHP_SELF']?>" method="post"> <INPUT TYPE="text" NAME="INPUT_1"> <input type="submit" name="Button_1" value="登録"> // 「INPUT_1」のデータを使って、下側のフレームの内容を更新 <INPUT TYPE="text" NAME="INPUT_2"> <INPUT TYPE="text" NAME="INPUT_3"> <input type="submit" name="Button_2" value="登録"> // 「INPUT_1~3」のデータを使って、上側のフレームの内容を更新 </form>

関連するQ&A

専門家に質問してみよう