• ベストアンサー

【PHP】リンク先に値を持って行きたい

A.htmlにフォームのHTMLを作り、 submitボタンで$_POST["atai"]に'xxx'を持って ACTION="A.html"するようになっております。 そこで、 B.htmlからA.htmlにリンクする際、 $_POST["atai"]に'yyy'を持たせてA.htmlへ遷移するようにしたい と思ったのですが、可能でしょうか。 説明が解りずらかったらすみませんが、 ご存知の方いらっしゃいましたらご教示願います。 宜しくお願い致します。

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

  • ベストアンサー
  • hkd9001
  • ベストアンサー率48% (99/204)
回答No.1

おはようございます。 さて、おたずねの件ですが… 要は、B.html から yyy という値を持たせて A.html に飛びたいということですよね? でしたら、B.html 内の form タグ内に action='A.html?atai=yyy' と書けばOKですね。

Claudia
質問者

補足

的確な回答をありがとうございます。 実はやりたいことというのが、、 具体的に書き、長くなってしまいますがご容赦下さい。 ------------------------------------------- ■xxx.htmlに <TABLE> <TR><TD>列1</TD><TD>列2</TD><TD>列3</TD> <TR><TD>ああ</TD><TD>アア</TD><TD>亜亜</TD> <TR><TD>いい</TD><TD>イイ</TD><TD>伊伊</TD> <TR><TD>うう</TD><TD>ウウ</TD><TD>宇宇</TD> </TABLE> のような表がございます。 ------------------------------------------- ■A.htmlで <?php  if($_POST["retu1noatai"]=="ああ"){~~~;}・・・ ------------------------------------------- ■B.htmlで <?php  if($_POST["retu2noatai"]=="アア"){~~~;}・・・ ------------------------------------------- ■C.htmlで <?php  if($_POST["retu3noatai"]=="亜亜"){~~~;}・・・ ------------------------------------------- のような処理を行いたいと思っております。 そこでxxx.htmlに1つのフォームでは賄えないので、 hkd9001様の回答を応用し(したつもり)で、 </TABLE>の外に <FORM NAME="aaa" METHOD="post" ACTION="A.html">  <INPUT TYPE="hidden" NAME="retu1noatai"> </FORM> <FORM NAME="bbb" METHOD="post" ACTION="B.html">  <INPUT TYPE="hidden" NAME="retu2noatai"> </FORM> <FORM NAME="ccc" METHOD="post" ACTION="C.html">  <INPUT TYPE="hidden" NAME="retu3noatai"> </FORM> と書き、 表内の各文字列に <TD><SPAN onClick="jump('aaa','ああ')">ああ</SPAN></TD> <TD><SPAN onClick="jump('bbb','アア')">アア</SPAN></TD>・・・ というクリック文字を、 javascript部に function jump(frm,moji){  if(frm=="aaa"){   document.aaa.okurumoji1.value = moji;   document.aaa.submit();  }  if(page=="bbb"){・・・ } のように書いてみたところ、 【document.aaa.okurumoji1はnull またはオブジェクトではない】 とエラーが出てしまっています。 誤っている箇所、解決方法、 或いは他の実現方法等 ご教示いただけますとありがたいです。 ご面倒おかけしますが宜しくお願い致します。

その他の回答 (1)

  • hkd9001
  • ベストアンサー率48% (99/204)
回答No.2

レスありがとうございます。 なるほど、出るのが 【document.aaa.okurumoji1はnull またはオブジェクトではない】 というエラーということですね。このエラーメッセージの元になっているであろう 「document.aaa.okurumoji1.value = moji;」 の意味は、 「aaa という名前のフォームの中にある okurumoji1 という名前のエリアに、変数 moji の内容を入れなさい」 ですが、上のほうに書いてある aaa というフォームの中には okurumoji1 という名前のものがありませんね。要するに「存在しないフォームの中身を変更しようとしている」と解釈され、エラーになったものと思われます。 もしかして、正しくは 「document.aaa.retu1noatai.value = moji;」 ではないかな?と思ったりしております。 ご参考になれば幸いでございます。

Claudia
質問者

補足

あ、申し訳ないです、説明中に誤りが・・・ フォームが <FORM NAME="aaa" METHOD="post" ACTION="A.html"> <INPUT TYPE="hidden" NAME="retu1noatai"> </FORM> で、jsが document.aaa.retu1noatai.value = moji; でした。 確かにフォーム名も部品名も合ってるのに オブジェクトが無いと言われ行き詰っていました。 ソース全体が20K程あり、 全体を見て頂くには少々難があると思いますので、 もう一度全体を隈なく調査してみようと思います。 ありがとうございました。

関連するQ&A