質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Ajax

Ajaxとは、Webブラウザ内で搭載されているJavaScriptのHTTP通信機能を使って非同期通信を利用し、インターフェイスの構築などを行う技術の総称です。XMLドキュメントを指定したURLから読み込み、画面描画やユーザの操作などと並行してサーバと非同期に通信するWebアプリケーションを実現することができます。

解決済

DBと連携した連動プルダウンについて

ao_love
ao_love

総合スコア0

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Ajax

Ajaxとは、Webブラウザ内で搭載されているJavaScriptのHTTP通信機能を使って非同期通信を利用し、インターフェイスの構築などを行う技術の総称です。XMLドキュメントを指定したURLから読み込み、画面描画やユーザの操作などと並行してサーバと非同期に通信するWebアプリケーションを実現することができます。

2回答

1評価

3クリップ

22803閲覧

投稿2015/12/10 03:36

お世話になっております。

[都道府県が選択されたとき、市区町村一覧を表示する(プルダウンの連動)](http://lamp-oita\.blogspot\.jp/2012/08/select_27\.html\)

このページにある機能を実現したく、以下のコードを書いたのですが、動きませんでした。

php

<\?php // DB接続設定 require_once 'config/define\.php'; // 県名を取得 \$pref_sql = "SELECT \* FROM prefectures"; \$pref_res = \$conDB->pdoQuery\(\$pref_sql\); \$pre = "<option value=''>都道府県を選択</option>"; foreach \(\$pref_res as \$value\) { \$pre \.= "<option value='{\$value\[prefectures_id\]}'>\$value\[prefectures_name\]</option>"; } // 都道府県から市区町村を取得 if\(\$_GET\['pref_code'\]\){ \$pref_code = filter_input\(INPUT_GET, 'pref_code'\); \$sql = "SELECT \* FROM area WHERE area_prefecture = '\$pref_code' ORDER BY area_id"; \$res = \$conDB->pdoQuery\(\$sql\); foreach \(\$res as \$value\) { \$area \.= "<option value='{\$value\[area_id\]}'>\$value\[area_name\]</option>"; } } // html読み込み include_once\('signup\.html'\);

html

<!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <title>Document</title> <script src="http://code\.jquery\.com/jquery-1\.11\.1\.min\.js"></script> <script src="http://code\.jquery\.com/mobile/1\.4\.5/jquery\.mobile-1\.4\.5\.min\.js"></script> <script type="text/javascript"> // \*\*\*\*\*\*\*\*\*\* 都道府県から市区町村選択 \*\*\*\*\*\*\*\*\*\* \$\('#pref'\)\.change\(function\(\) { \$\.get\('signup\.php\?pref_code='\+\$\(this\)\.val\(\), function\(data\) { \$\('#area'\)\.html\(data\); }\); \$\('#area'\)\.val\(''\); \$\('#area'\)\.selectmenu\('refresh'\); }\); </script> </head> <body> <form action="" method="post"> <div> <select name="pref" id="pref"> <\?=\$pre\?> </select> </div> <div> <select name="area" id="area"> <option value="">選択してください</option> <\?=\$area\?> </select> </div> </form> </body> </html>

\$preはきちんと取得されて表示されているので、DBへの接続はできています。
また、 \$pref_codeに直接数字を割り当てた場合も正しく表示されるので後半のSQLが間違っているということもないようです。

要するにGETの値が渡されていないということだと思うのですが、恥ずかしながらどこを変えれば値がちゃんと渡るのかが分かりません…。

参考サイトの[デモ](http://wc\.m47\.jp/s/\)のソースと見比べてみたのですが、わかりませんでした。

よろしくお願いいたします。

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Ajax

Ajaxとは、Webブラウザ内で搭載されているJavaScriptのHTTP通信機能を使って非同期通信を利用し、インターフェイスの構築などを行う技術の総称です。XMLドキュメントを指定したURLから読み込み、画面描画やユーザの操作などと並行してサーバと非同期に通信するWebアプリケーションを実現することができます。