• 締切済み

一つのformで、複数のaction指定

レイアウトなどの関係で、formの配置が基本とは異なるものになってしまい、うまく動作させる方法が見つからず困っています。 現在は <form> <input type="checkbox" name="select[]" value="●●"> <input type="checkbox" name="select[]" value="●●"> <input type="checkbox" name="select[]" value="●●"> </form> …… <form method="POST" action="A.php"> <input type="submit" name="aa" value="あああ"> </form> <form method="POST" action="B.php"> <input type="submit" name="bb" value="いいい"> </form> <form method="POST" action="C.php"> <input type="submit" name="cc" value="ううう"> </form> <form method="POST" action="D.php"> <input type="submit" name="dd" value="えええ"> </form> のようになっていて、チェックボックスの値を送信したいのは、Dのボタンを押したときだけPOSTされるようにしたい状態です。 この値を取得する方法か、もしくは <form method="POST" action="(ボタンに応じたもの)"> <input type="checkbox" name="select[]" value="●●"> <input type="checkbox" name="select[]" value="●●"> <input type="checkbox" name="select[]" value="●●"> …… <input type="submit" name="aa" value="あああ"> <input type="submit" name="bb" value="いいい"> <input type="submit" name="cc" value="ううう"> <input type="submit" name="dd" value="えええ"> </form> このように、一つのフォームの中に埋めてしまい、actionに入る値をボタンによって分ける方法はありませんでしょうか? もしくは他の方法でも構いません。 お分かりの方がいましたら、是非ご教授お願いいたします。

  • PHP
  • 回答数2
  • ありがとう数1

みんなの回答

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.2

うけ先を一つにしぼり、$_REQUEST["aa"](~dd)の値で分岐して それぞれのページに飛ばせばよいのでは? 受け先のページから各ページへのパラメータの受け渡しは セッションベースになると思います

  • kokorone
  • ベストアンサー率38% (417/1093)
回答No.1

http://personal.okwave.jp/qa4234502.html が参考になりませんか? 条件として、JavaScriptを使用することになります。

関連するQ&A

  • <FORM> </FORM> の中に さらに <FORM> </FORM>があるときのSUBMITボタンについて

    今、 <FORM ACTION="aaa.asp" METHOD="POST" Name="form1"> <input type="SUBMIT" value="ボタン1"> <FORM ACTION="bbb.asp" METHOD="POST" Name="form2"> <input type="SUBMIT" value="ボタン2"> </FORM> </FORM> としていて、ボタン2を押すとbbb.aspに 飛んでほしいのでに、aaa.aspに飛んでしまいます。 こういう場合どのようにすればよいのでしょうか? それぞれのボタンは hidden の値をそれぞれの フォームの中の値を渡したいので どうしてもSubmitがいいのです。

    • ベストアンサー
    • HTML
  • 同一ページで複数のformを扱う場合

    同一のページ内にhiddenでIDを振った削除ボタンを用意しクリックされたIDを取得するにはどのようにすれば良いでしょうか? <form action="/test.php" name="1" method="post"> <input type="hidden" name="id" value="1" /> <input type="submit" name="delete" value="削除"> </form> -- 省略 <form action="/test.php" name="10" method="post"> <input type="hidden" name="id" value="10" /> <input type="submit" name="delete" value="削除"> </form> formにnameを振ってみても最後のIDがPOSTされてしまいます。

    • 締切済み
    • PHP
  • 複数formの使用について

    お世話になります。 複数のFORMを入れ子で使用する方法はありますでしょうか? 下記の記述だと外側のFORMが無効になってしまいます。 表示の順は以下のようにしたいです。 aaa.phpへPOST変数でデータを受け渡して使用します。 <form method="post" name="test1" action="aaa.php"> <input type="text" name="text01" id="textA" value="10"> <input type="text" name="text02 id="textA" value="20"> <input type="text" name="text03" id="textA" value="30"> (上のinputタグ数は動的に変わります) <form method="POST" name="test2" action="bbb.php"> <select name="select"> <option>selectA</option> <option>selectB</option> <option>selectC</option> <input type="submit" name ="read" value="読込"> </select> </form> <input type="submit" value="保存" > </form> 以上、よろしくお願いいたします。

    • 締切済み
    • PHP
  • FORMで送信ボタンと戻るボタンを2つつけてそれぞれ遷移先を変えたい

       以下のような画面を作りたいのですが↓ -------------------------------------------------------------------------------- ● a.php (ユーザ情報入力画面) ※フォームに入力する画面    <FORM method="POST" action="b.php">   <INPUT type="text" name="mail">   <INPUT type="submit" name="submit" value="確認">  </FORM> ● b.php (ユーザ情報入力確認画面)※フォームに入力された値を表示する画面  <FORM method="POST" action="c.php">   <!-- ここには、フォームに入力された値を表示する -->   <INPUT type="submit" name="submit" value="登録"> // c.php に遷移する   <INPUT type="submit" name="submit" value="戻る"> // a.php に戻る  </FORM> ● c.php (完了画面) -------------------------------------------------------------------------------- b.php について質問なのですが、 b.phpにおいて、登録ボタンと戻るボタンを2つつけて、 それぞれ遷移先を変えたいのですが、どうすればいいんでしょうか・・・? <FORM method="POST" action="c.php">と書いてしまうと、 戻るボタンを押しても戻らずに、c.phpに遷移してしまいますよね?? こういう場合ってJavaScriptとかで遷移先を指定するんですか・・? もしそうでしたら、JavaScriptがよくわからないので できればサンプルコード示していただけると助かります・・・。   

  • form 内 onChange

    恐れいります。 <form>内で、もう一つ<form>を作成し、送信したいのですが、 なかなかうまくいきません。form内のformは、selectボックスで、選択時に自ページにsubmitさせるようにしたいのですが。。 <form action="./xxx.cgi" method="POST"> <input type="text" name="xxx"> <form action="./" method="POST"> <select name="YYY" onChange="this.form.submit()"> <option value="ddd">ddd <option value="eee">eee </select></form> <input type="text" name="xxx"> <input type="submit" value="送信"> </form> よろしくお願いします。

    • ベストアンサー
    • HTML
  • formで複数のボタンを使いたい

    htmlの問題なので、カテゴリがhtmlかphpか迷いましたがphpで質問します。 htmlにおいて、form中にsubmitボタンを2個置きたいのです(例、修正ボタンと削除ボタン)。普通ならnameで区別しろということになり、飛び先(例えばaction=judge.php)中でnameで分岐させることになると思います。 ところが、現在phpフレームワークベースで開発しており、上記2つの処理を行うphpがすでにあるため、htmlからは、ボタンのactionによりそれぞれ別のphpを呼び出したいのです。以下に擬似コードを示しますが、以下のようにformが2つだと商品コード入力が2つになり、なんともおかしいので困っています。 form method=post action=edit.php input type=text 商品コード, input type=submit 修正 form method=post action=delete.php input type=text 商品コード, input type=submit 削除 質問のように1つのformに対して複数のsubmitを置くか、あるいは2つのformでも上記商品コードが1つであれば問題ないので、もしそのような方法があればご教示をよろしくお願いします。

    • ベストアンサー
    • PHP
  • 複数のフォームから送信

    複数のフォームからtextの値を送信したいのですができますか?〒番号を入力して検索ボタンをおすと住所がでてきて最後に登録をしたいです。検索だけのプログラムはできてますがフォームを二つにすると両方のsubmitが登録になります・・・ 一応自分でいろいろためしましたがだめでした。。。 html,php,javascriptです。 二つともだめでした。。。。 rei1.php ------------------------- <html> <body <form method="POST" action="1.php"> お名前:<input type="text" name="name"> <br> <br> <form method="POST" action="yubin.php"> 〒:<input type="text" name="yubin"> <input type="submit" value="検索"> <br> 住所:<input type="text" name="zyu"> <br> </form> メールアドレス:<input type="text" name="email"> <br> <input type="submit" value="登録する"> </form> </body> </html> -------------------------------------- rei2.php -------------------------------------- <html> <head> <script language="javascript"><!-- function send() { document.nform.submit(); document.nform2.submit(); document.nform3.submit(); } //--></script> </head> <body> <form name="nform" method="POST" action="1.php"> お名前:<input type="text" name="name"> <br> </form> <form name="nform2" method="POST" action="yubin.php"> 〒:<input type="text" name="yubin"> <input type="submit" value="検索"> <br> 住所:<input type="text" name="zyu"> <br> </form> <form name="nform3" method="POST" action="1.php"> メールアドレス:<input type="text" name="email"> <br> <input type="submit" value="登録する"> </form> </body> </html> ------------------------------------

  • chromeでフォームの値が取得できない

    PHPでフォームに入力された値を取得して画面に表示させる処理において、 Javascriptでフォームの値を変更した場合、chromeだと変更後の値が 取得できません。 例えば、 <form name="form" method="post" action="index.php"> <input type="checkbox" name="chk1" value="111"> <input type="hidden" name="data1" value="AAA"> <input type="submit" value="送信"> </form> というようなフォームがあったとして、Javascriptで値を <form name="form" method="post" action="index.php"> <input type="checkbox" name="chk1" value="222"> <input type="hidden" name="data1" value="BBB"> <input type="submit" value="送信"> </form> と、変更しても送信ボタンを押して取得できる値は、上の方の値になります。 IEやFireFoxでは問題なく変更後の値が取得できるのですが、chromeだと 取得できません。 なにか解決方法があるのか、それともchromeの仕様なのかご教示いただければと 思います。 どうかよろしくお願いいたします。

  • document.form.actionでの処理

    以下のようなソースにて、 ・<form>のactionでは"send.php"へPOSTしたい。 ・javascriptにて、<select>で選択した値をhoge.phpへ渡したい 上記の事を実現するため、 ・リストから選んだ値を画像クリックで"hoge.php"へ渡し別窓で表示 ・"text"に入力した値をsubmitで"send.php"へ渡す といった処理をしているのですが、 "hoge.php"を参照した後に"text"へ何か入力してsubmitすると 本来send.phpへとぶはずが、"hoge.php"へとんでしまいます。 何が原因なのか、また最良を方法がありましたら ご教授頂ければと思います。 <script> <!-- function form_submit(url){ document.form.action=url; document.form.target = "_blank"; } //--> </script> | <FORM METHOD="POST" name="form" action="send.php"> <SELECT name="sel"> <OPTION value="001">001</OPTION> <OPTION value="002">002</OPTION> </SELECT> <input type="image" src="sub.gif" onClick="javascript:form_submit('hoge.php')"> <input type="text" name="text"> <input type="submit" value="送信"> </FORM> |

  • 複数FORMの一括実行について

    通常であれば同一サイト内に下記のソース(フォーム)が入るのですが、 これを改良しサイト上で希望の送信先をチェックボックスで選択し一回の操作で複数のcgiを実行したく思います。 良いcgiがあれば教えてください。 又は改造ができるcgi、修正方法を分かりましたらお教え願います。 サイトA <form action="https://aaa.cgi" method="post"> <input type="hidden" name="名前" value="name"> <input type="hidden" name="メール" value="mail"> <input name="Submit" type="submit" value="送信"> </form> サイトB <form action="https://bbb.cgi" method="post"> <input type="hidden" name="名前" value="name"> <input type="hidden" name="メール" value="mail"> <input name="Submit" type="submit" value="送信"> </form> サイトC <form action="https://ccc.cgi" method="post"> <input type="hidden" name="名前" value="name"> <input type="hidden" name="メール" value="mail"> <input name="Submit" type="submit" value="送信"> </form>

    • 締切済み
    • CGI

専門家に質問してみよう