• 締切済み

複数のフォームから送信

複数のフォームから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> ------------------------------------

みんなの回答

  • is_may
  • ベストアンサー率65% (58/89)
回答No.1

いろいろ方法が考えられますが僕がやるとしたら、以下のように名前などの記入フォームの値で送信せず、送信するときにJavaScriptで各フィールドの値を取得し、「登録する」ボタンの入っている<form>に配置した隠しフィールド(メインのフィールド)に代入する方法です。 <script language="javascript" type="text/javascript"><!-- function xSubmit(){ d=document; d.f.name.value=d.getElementsByName("dname")[0].value; d.f.yubin.value=d.getElementsByName("dyubin")[0].value; d.f.zyu.value=d.getElementsByName("dzyu")[0].value; d.f.email.value=d.getElementsByName("demail")[0].value; } //--> </script> お名前:<input type="text" name="dname"> <br> <form method="POST" action="yubin.php">〒:<input type="text" name="dyubin"> <input type="submit" value="検索"> <br> 住所:<input type="text" name="dzyu"> <br> </form> メールアドレス:<input type="text" name="demail"> <br> <form method="POST" action="1.php" name="f" onsubmit="return xSubmit()"> <input type="hidden" name="name"> <input type="hidden" name="yubin"> <input type="hidden" name="zyu"> <input type="hidden" name="email"> <input type="submit" value="登録する"></form> 他にも郵便番号をJavaScriptで取得するなどの方法が考えられますが、yubin.phpの仕様が分からないのでとりあえず参考程度に。

03d1081
質問者

お礼

ありがとうございます!無事にできました。

関連するQ&A