みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

frame間の値の受け渡し方法

環境はxp、apache2、php5、Postgresql8.2です。
1台のPCをサーバ&クライアントにしています。
ただ今PHPとPostgresqlの勉強をしています。

---------------------------
frameで左右に分かれています。
「左がメニュー画面」
「右がデータを表示する画面」
---
<frame name="hidari" src="aa.php">
<frame name="migi" src="ee.php">
メニュー用のPHPに

---------------------------
aa.php(左のメニュー画面)
「number」というテキストボックスに入力して、
「検索」をクリックすると、
右の画面にデータが表示されます。

<FORM name="Form1" METHOD=post target="migi">

number<INPUT TYPE=TEXT NAME=number SIZE=5>

<a href="./ee.php?func=ads" target="migi"><span style="color:#DB7093">検索</style></a>
---------------------------
ee.php(左のデータ画面)
テキストボックス「number」の値を受け取るために
echo $_POST['number'];
「number」の値が表示されません。

どのようにすれば受け取れますか?

投稿日時 - 2007-12-06 17:00:02

QNo.3576062

wee

困ってます

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

PHPでの値の受け取り方を一度まとめなおしてみるといいかもしれません。

<FORM name="Form1" METHOD=post target="migi">
number<INPUT TYPE=TEXT NAME=number SIZE=5>

<a href="./ee.php?func=ads" target="migi"><span style="color:#DB7093">検索</style></a>

1)上記の例だと<form>タグが閉じていませんし、Actionが設定されていませんので、ee.phpを呼び出すことができないですね。
→この場合は、
<form name="Form1" method="POST" action="./ee.php" target="migi">
number<INPUT TYPE="TEXT" NAME="number" SIZE="5">
<input type="submit" value="検索">
</form>
としてあげる必要があります。

2)<a>タグでphpを呼び出した場合は、?以降にかかれたパラメータのみが、$_GETで引き渡されるだけです。
上記の例では、「?func=abs」のみですから、ここから呼び出されたばあいは、$_GET["func"]="abs"という値しかee.phpでは利用できません。
こちらでnumberの値を受け渡したければ、JavaScriptを利用するしかないですね。

投稿日時 - 2007-12-06 23:09:24

お礼

ご返事有り難うございました。
ようやく理解することが出来ました。
有り難うございました。

投稿日時 - 2007-12-07 14:48:06

ANo.3

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(4)

ANo.4

wp_

>"か'は、どっちの方が良いということはありますか?
HTMLではどちらも機能的に差異はありません。
PHPでは二つの意味は違いますが、その辺はマニュアル等参照すると良いです。

><input type="submit" .... >を使った方が宜しいのでしょうか?
「質問者様がどうしたいか」によります。
単純に見栄えの問題なのでどちらでもかまいません。

>そもそもこのようなことはしないのでしょうか?
いや、当方は結構多用しますよ。フレームではなく、リンクでsubmit()と言う意味ですけどね。

投稿日時 - 2007-12-07 14:40:53

お礼

ご返事有り難うございました。
大変に参考になりました。

投稿日時 - 2007-12-07 14:49:04

ANo.2

JavascriptでSubmitするよりも、Submitボタン使ったほうが楽だと思います。
深く考えずに書けますし、Javascriptだとクライアントの環境に依存して
動かない場合がありますから、今回は特に必要ないかと。

もっともデザイン上の制約とか、フォームが複雑になってるとか、複数
処理のボタンがあるとか、入力値を加工してから投げるとか使うケース
は色々ありますので、使わないことはないです。

投稿日時 - 2007-12-06 21:47:35

お礼

ご返事有り難うございました。
大変に参考になりました。

投稿日時 - 2007-12-07 11:40:44

ANo.1

wp_

何から突っ込んでいいやらですが、

><FORM name="Form1" METHOD=post target="migi">
<FORM name="Form1" METHOD="post" target="migi">
HTMLでは数字以外は"か'で括らねばなりません。

><a href="./ee.php?func=ads" target="migi"><span style="color:#DB7093">検索</style></a>
aタグとformタグは相互に関与しません。
つまり、リンクを押してもformタグのデータは送信されませんよ、ということ。

やるならば<input type="submit" .... >とするか、javascriptで
<FORM action='ee.php' name="Form1" METHOD="post" target="migi" id='f1'>
<input type='hidden' name='func' value='ads' />
<a href="javascript:document.getElementById('f1').submit()">検索</a>
のようにするしかありません。

投稿日時 - 2007-12-06 17:17:39

補足

こんにちは。
ご返事ありがとうございました。
つっこみどころ満載と言うことで
申し訳ありませんでした。
少し質問があるのですが・・・。

>HTMLでは数字以外は"か'で括らねばなりません。
"か'は、どっちの方が良いということはありますか?

>やるならば<input type="submit" .... >とするか、javascriptで
javascriptを使うよりも
<input type="submit" .... >を使った方が宜しいのでしょうか?

というよりも
そもそもこのようなことはしないのでしょうか?

投稿日時 - 2007-12-06 20:40:12

あなたにオススメの質問