![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
こんばんは。プログラム初心者です。
今、PHPとDBを使用したプログラムを組んでいます。
PHPはsmartyを使用してます。
そこで画像投稿画面を作成していまして、
DBと連動したプルダウンを作成したいのですが、
全然作れなくて困っています。
やりたいことはHTML側で元々記述してあるセレクトした値を飛ばして
DB接続し、その値をそのままSQLに組み込んで
紐づいたデータをそのままプルダウンで表示させたいです。
こんな感じです↓
http://jsajax.com/NestedDropDown2Article686.aspx
phpだけだとリロードしたりすることになるので、
JavaScriptを使用すると思いここに質問させていただいてます。
恐らく、JavaScriptでHTMLのvalue(値)を取得し、
別のPHP(DB接続とSQLの記述をしたもの)に値を渡して、
そこから元のPHPに戻るといったことをやればいいのでは…
と思っていまして、接続、SQL用の別PHPは作成しました。
(非同期通信って云うんですかね)
その際、2次元配列(配列の中は連想配列)で取得していて、
valueはその内の1つ、実際テンプレート側に
表示する文字は別の1つを表示させたいです。
SQLを流す側のPHPで配列は
【0】
[zip]
[town]
【1】
[zip]
[town]
…
といった感じの二次元配列を取ってます。
それを
<option value="{$zip}">{$town}</option>
みたいな形で取れた分、プルダウン作成したいです。
<option value="">選択してください</option>
のプルダウン初期表示も欲しいです。
色々調べてみたんですが、
JavaScriptが難しくてhtmlの値すら取ることができず、
全然できません。どのように記述したらよろしいでしょうか?
他で使用しているため、j-queryは入れてあります。
ご教授のほど是非よろしくお願いします。
No.2ベストアンサー
- 回答日時:
意図がうまくつたわっていないかもしれないので・・・
>サブミット
これはformで<input type="submit" ...
をつかって明示的にサブミットすることをおすすめています。
もちろんjavascriptで代替的にサブミットすることは可能です。
その際は、どういう状態になったらサブミットしていいのかを
コーディングして、条件が一致したら処理をするというのが妥当です。
たとえばセレクトボックスA、Bが初期値ではなく、テキストボックス
x,yに値がはいっている・・・など条件を考え、それに付随して
オブジェクトにonchangeトリガーをはっておくということです。
javascriptについて理解が浅いのであれば勉強してくださいとしか
いいようが・・・
またajaxについてはご指摘の通り非同期処理なので、特定の
セレクトボックスのonchangeイベント処理だけ気にしておけば十分です。
zipを選ぶと住所がでるとか。まぁその程度
だいぶお返事遅れて申し訳ありません。
回答ありがとうございます。
なんか少し勉強してやってみたらどうにかこうにか
できました。難しいですね。
もう少し勉強してみます。
ありがとうございました。
No.1
- 回答日時:
考え方は3つ。
(1)Ajaxで処理する。
(2)全てのデータをあらかじめ読込んでおき、必要にあわせて表示する
(3)フレーム系の処理
(1)>(2)>(3)の順でおすすめ
(2は理論的には可能だが大きなデータはお勧めできない、
3はいまどきフレームっていうのは・・・)
javascriptは所詮環境依存なのでやはりきちんと毎回サブミットして
やるのがまっとうなやり方だと思います
回答ありがとうございます。
AJAXが確かに便利で良さそうですね。
サブミットですが、プルダウンで
どのように行えば良いのでしょうか?
今作成しているのが、各項目ごとに
テキストボックスやプルダウン諸々があって、
それを記入後にサブミットといった形を取りたいので
プルダウン記述してすぐサブミットといった形だと
おかしなことにならないのでしょうか?
あとjavascriptでの値の取り方、
それを経由してのjavascript側から
php側での値の取り方といったこともよくわかりません。
お手数ですが、回答いただけるとありがたいです。
よろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript JavascriptからSQLへ繋ぎ方が分からない 3 2022/07/07 00:27
- JavaScript セレクトを全て選択されていないと、文字によるエラーメッセージを表示させるコードを調べています 2 2023/06/22 15:48
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- JavaScript セレクトボックスで配列を呼び出したい。 1 2022/07/08 20:14
- PHP PHP MySql ページング 2 2022/09/20 06:38
- PHP if(preg_match("/[^0-9]/",$gu_d)){意味を教えてください。 1 2022/05/06 05:37
- PHP htmlspecialcharsが機能していないです。 バグですか? 1 2022/04/05 01:22
- JavaScript 以前の質問だと、どの条件でも配列が表示されてしまいます。 1 2022/07/09 11:40
- PHP SQLとPHPの連結方法がわからないのでアドバイスお願い致します 1 2022/07/12 12:16
- JavaScript sessionStorageを調べています。 1 2023/06/20 12:41
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
「戻る」ボタン使用時のフォー...
-
JSPの処理の途中で、JavaScript...
-
Webページ中の javascript をVB...
-
VB.netの重複データ数カウント...
-
event.srcElementの動的設定
-
グローバル変数とローカル変数...
-
六角形のマスの作り方
-
正整数の半角数字かどうか判定する
-
エクセルVBA/ Formatで文字列が...
-
PowerPointで時計表示
-
JavaScriptでショートカットキ...
-
javascriptからサーバサイドの...
-
JavaScriptで、実行するたび値...
-
文字認証の問題
-
VBScript から JavaScript を呼...
-
イベントevt?evt.target:event....
-
コメント削除/圧縮/難読化
-
外部リンクのクリック数を表示...
-
javascriptで最初のところに戻...
-
C#でTextBoxに数値のみ入力可能...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
助けてください!スパムメール...
-
連動プルダウンについてです。
-
「戻る」ボタン使用時のフォー...
-
PHP処理実行後のページの遷移に...
-
必要時だけ必須記入にする方法
-
javascript中の記述でのJSP文<%%>
-
javascript 「戻る」を押したと...
-
submitした後にiframeのページ...
-
現在日付を初期値にするには
-
javascriptからpythonへ値の受...
-
Excelの起動
-
毎週決まった曜日から数日間だ...
-
ウェブフォームにjavascriptは...
-
ボタンに複数機能を持たせられ...
-
javascriptでCGIに値を渡したい...
-
Ajax以外で、JavaScriptからPHP...
-
javascript 選択した値のみを送...
-
Onclickイベントでデータをcgi...
-
javascriptでクッキーを書き出...
-
JavaScriptで月に対して日の整...
おすすめ情報