dポイントプレゼントキャンペーン実施中!

こんばんは。

HTML(apache)+MySQL+PHPの連携で、プルダウンメニュ
ー2つとテキストボックス2つの入力内容をPHPにデー
タとして渡し、それをキーワードにして、データベー
スの検索をする、という処理をさせようと思い、PHP
にデータを渡すためのタグを書いています。

http://ns1.php.gr.jp/pipermail/php-users/2002-De …

を参考に、テキストボックス2つの内容をPHPに渡すこ
とはできたのですが($_POST関数で渡しています)、
プルダウンメニューで選択した場合のvalue値を、PHP
に渡す処理ができず、行き詰っています。

http://www.big.or.jp/~mio/ga/ht/htref/ht_ref_opt …

で、プルダウンメニューで選択した場合のvalue値を
渡すことは可能と思い、タグを書きましたが、PHPで
データをダンプさせると何も表示されませんでした。
つまりはPHPにはデータが渡されていない状態で、HTM
Lタグレベルでの問題という事が分かり、タグの勉強
もしましたが、option部分の記述は間違っていないの
では?、と思っています。

ではform actionの、データを送信する送信ボタンの
記述で足りないところがあるのでは、と思い、調べた
のですが解決方法が見つかりません。
どなたかご教授いただけましたら幸いです‥
宜しくお願い申し上げます。

クライアント環境はWin2000、IE6.0
サーバーはRedHat9.0でPHPは4.2.2です。

A 回答 (2件)

この場合、


<form> タグの位置を変えるだけで動作します。
<select>タグの前に移動させてください。
PHP4.0.6で動作確認済みです。
JavaScript使うまでもなかったですね。失礼しました。
=== 以下ソース ===

<html>
<body>
<form action="yamaha0.php" method="post"> <!-- ここに移動 -->

<br>分類<br>
<select name="clasfct" size="3">
<option value="1">新機能</option>
<option value="2">仕様変更</option>
<option value="3">バグ修正</option>
</select>

<p>

Rev<br>
<select name="rev" size="3">
<option value="1">ver 8.01.15</option>
<option value="2">ver 7.01.34</option>
<option value="3">ver 7.00.29</option>
</select>
<br>

キーワード1を入力してください(必須):<input type="text" name="key1"><br>
<p>
キーワード2を入力してください(任意):<input type="text" name="key2"><br>
<p><input type="submit" name="exec" value="検索">
</form>
</body>
</html>
    • good
    • 1
この回答へのお礼

いいえ!とんでもないです。
< JavaScript使うまでもなかったですね。失礼しました。

早速試してみたところ、お蔭様でデータをPHPに渡す
ことができました。
(PHPで渡したデータをダンプさせたところ、値が表
示されました)

なるほど‥formタグの位置も重要なのですね。
JavaScriptで処理というご回答もいただきまして、あ
りがとうございました。
今回はHTMLでの処理で行って見ようと思います。

本当にありがとうございました。m(_ _)m

お礼日時:2004/08/19 09:56

タグで書いてもPHPにはデータが渡されていないのであれば、


以下のようにJavaScriptでHIDDENタグに選択内容を設定してから送信すると言うのはどうでしょう?
少しでも参考になれば幸いです。


<html>
<script langage="javaScript">
 function send(){
   document.form1.selectedValue.value = document.form1.sel.value ;
   document.form1.submit();
   return true;
 }
</script>
<body>
<form name="form1" action="resukt.php" method="post">
 <select name="sel">
  <option value=1>選択肢1
  <option value=2>選択肢2
  <option value=3>選択肢3
 </select>
<input type="hidden" name="selectedValue" value="" >
<input type="button" onClick="send()" value="送信">
</form>
</body>
</html>

この回答への補足

文字数制限に引っかかっていました。
スクリプトは以下になります。

<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=euc-jp">
</head>

<body>

<br>分類<br>
<select name="clasfct" size="3">
<option value="1">新機能</option>
<option value="2">仕様変更</option>
<option value="3">バグ修正</option>
</select>
<p>

Rev<br>
<select name="rev" size="3">
<option value="1">ver 8.01.15</option>
<option value="2">ver 7.01.34</option>
<option value="3">ver 7.00.29</option>
</select>
<br>

<form action="yamaha0.php" method="post">
キーワード1を入力してください(必須):<input type="text" name="key1"><br>
<p>
キーワード2を入力してください(任意):<input type="text" name="key2"><br>
<p><input type="submit" name="exec" value="検索>
</form>
</body>
</html>

補足日時:2004/08/18 21:47
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!