Ajax 動的なXMLの具体例について

今回は Ajax でよく使われる、動的なXMLを使った実用的でわかりやすい例を説明します。

全国の市町村は 1900 以上あるのですが、データを一度に全て表示しようとすると、多すぎて大変です。そこで各都道府県ごとの市町村だけを表示できたら便利です。

その場合、静的なXMLだと都道府県別に 47 のファイルを用意しなければなりません。

しかし動的なXMLなら、プログラミング言語を使い、データベースから条件に合った市町村のみを取得して表示することができます。そのためファイルは1つで済みます。

イメージし難いかもしれませんが、実際に見ればすぐにわかります。


【1】Internet Explorer を起動して、以下のURLにアクセスします。

http://ws.bzen.net/pgtop/GetCity.php?prefCd=1

ajax-309.gif

北海道の市町村だけが表示されました。


【2】次は Webブラウザのアドレスで、URLのパラメータを「8」に変更し、「移動」ボタンをクリックします。

ajax-311.gif


【3】今度は東京都の市町村が表示されました。

ajax-310.gif


【4】パラメータの数値を 1~47 の範囲で変え、他の都道府県の市町村も表示してみてください。


【解説】

(1)Webブラウザのアドレスから、URLを入力して表示した場合は、GETメソッドとなります。リンクをクリックして表示した場合もGETメソッドです。


(2)「GetCity.php」はプログラミング言語のPHPで書かれています。このプログラムは、GETメソッドでリクエストされると、「prefCd」という名前のパラメータで指定した数値(都道府県)の市町村をデータベースから検索して、XML形式で出力するようになっています。

これも簡単なWebサービスと言えます。都道府県を指定すると、市町村データが取得できるサービスです。

この仕組みを Ajax のプログラムで利用したのが、最初に紹介したWebサイトです。
全国の特産品検索


(3)GETメソッドを使うメリットは、特にプログラムを書くことなく、URLだけで取得するデータを変化させられることです。POSTメソッドならある程度プログラムを書かなければなりません。

楽天Webサービスなどでも、パラメータの数が増えるだけで、GETメソッドの使い方は同じです。そのため初心者のうちはGETメソッドが何かと便利なのです。

ただしGETメソッドでは、送信できる情報量に制限があることや、URLに情報が表示されてしまうため、重要な情報のやり取りには向きません。その場合はPOSTメソッドが適しています。


(4)Webサービスを利用するだけなら、それほど深い知識はいりません。しかしWebサービスを自分で公開する場合は、データベースとサーバーサイドで動くプログラミング言語の知識が必要です。よく使われているのが、PHPとMySQLの組み合わせです。

詳しくは PHP初心者入門講座 をご覧ください。基本的なことが学べます。


スポンサード リンク

スポンサード リンク






Ajax初心者入門講座TOPへ