お世話になります
オーダーフォーム等の郵便番号を入力すると、住所が自動入力される仕組みがありますが、ライブラリを使用せずに(google apiは使用可)作るにはどのようにすればよいのでしょうか?
郵政省よりCSVをダウンロードして、DBに格納して、php、javascriptなどで出力する仕組みを作るのでしょうか?
かなり大雑把な質問で申し訳無いのですがご教授いただければ幸いです。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答5件
0
ざっくりとした仕組みの話でしたら、以下のようになってると思います。
・前提条件
郵便番号に紐付く住所情報がサーバのどこかに保存されている(主にDBかな)
・処理の流れ
1.郵便番号を入力
2.入力された郵便番号を非同期通信(Ajax)でサーバに送信
3.サーバ処理で郵便番号に紐付く住所情報を取得し返却
4.非同期通信結果を解析し各住所入力フォームに設定
投稿2015/11/17 06:21
退会済みユーザー
総合スコア0
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/12/02 10:24
0
自分の会社でもまさにこれを実装してありますが、実装してから思ったのは、わりと郵便番号って変更があるので、その都度自社サーバのDBに登録した郵便番号の更新が面倒くさいってことです(苦笑)
局所的な地域で使うのであれば、運が悪くなければそれほど頻回な郵便番号変更は無いのかもしれませんが、全国版を自分で維持するのは面倒くさいです( ̄▽ ̄;)<今は月に一度、郵政局のデータから郵便番号関連のDBを更新しています。
堅牢なシステムを作らなければいけない前提なら、自前で郵便番号と住所文字列を関連付けたDBを用意するしかありませんが、そうではないなら、その後のメンテナンスの手間を考えるとWebAPIなどを使用して取得してしまうのが手っ取り早い上に簡単だと思いますよ。
データはJSONで取得するのが一般的ですけれど、XMLデータとかでも出力してくれるWebAPIもあったような・・・失念しましたが。
ちなみにgoogleAPIを使ってもいいってことですので、googlemaps APIを使用して、以下のURLにアクセスすると、get情報に入力してある〒100-0001のデータがJSON形式で受け取れますので、それをajaxで料理してあげるのが一番簡単だと思います。
http://maps.googleapis.com/maps/api/geocode/json?address=1000001&language=ja&sensor=false
投稿2015/11/18 01:33
編集2015/11/18 01:35総合スコア83
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/11/18 02:49
2015/11/18 03:19
2015/11/18 04:24
2015/11/18 04:39
2015/11/18 05:25
2015/11/18 08:31
2015/11/18 10:33 編集
2015/11/24 12:47
0
- HTML 上に input:text を 1つないし、2つ設置
- 何かとトリガーに ajax 通信で入力値を送信
- 送信先の PHP ファイルで受け取った値(郵便番号)をもとに DB から住所テキストを検索
- 検索ヒットした住所テキストを JSON(またはXML)形式で応答
- ajaxの結果を受け取り、整形して住所入力欄に
以前に書いた記事が、仕組みとしては近いものです。改変すれば、お望みのものになります。
郵便番号データから都道府県・市町村リストを作成するためのスクリプト
投稿2015/11/17 08:24
退会済みユーザー
総合スコア0
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
ZIP SEARCH API SERVICE
というのが提供されています。
ボランティア的に構築されたサービスのようですが、無償ですし、郵便番号のデータも毎月更新されているようなので使ってみては如何でしょう。
上記リンクには、プログラムサンプルもあります。
投稿2015/11/17 06:45
総合スコア6915
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/11/17 07:31