No.1ベストアンサー
- 回答日時:
住所だけで、近隣のお店かどうか判定するのは難しいと思います。
住所の緯度と経度を調べてDBに住所と一緒に登録しておきます。
緯度と経度を調べるのは「ジオコーディング」といって、GoogleやYahoo
がWebのAPIを提供しているから、それを使うとよいでしょう。
※他にも「ジオコーディング」で検索するといろいろ見つかります
http://code.google.com/intl/ja/apis/maps/documen …
http://developer.yahoo.co.jp/webapi/map/openloca …
郵便番号から住所を検索するサービスも、自サーバーにインストールするパッケージとか
APIサービスが無料の物(自分でメンテナンスが前提)が結構みつかります。
http://developmentor.lrlab.to/postal/tutorial.html
http://zip.ricollab.jp/
郵便番号から求めた住所をジオコーディングして緯度・経度を出し、
お店の緯度・経度から距離を求めます。
距離の算出は、近距離ならば3平方の定理(L^2=X^2+Y^2)で十分です。
広域なら、球面三角方を使います(地球は丸いから)
http://gpscycling.net/fland/make/ckyoho.htm
http://www-seis1.kugi.kyoto-u.ac.jp/visual/grams …
こおいった、部品をPHPやJavascript等で作れば出来ると思います。
なるほど、非常に参考になりました。
確かにyyr446さんのおっしゃる手順でプログラミングすれば望むシステムを構築できそうです。
早速作成にとりかかります。
ありがとうございました!
No.2
- 回答日時:
基本的にはNo1の回答者さんと同じですが、一つのアイディアとして回答しておきます。
「近隣」という言葉の解釈にもよりますが、郵便番号から住所を取得する事は既存のAPIなど使えばできますので、以下のように・・・
1.郵便番号入力
↓
2.市町村名を取得
↓
3.DBのLIKEを使って、住所フィールドから2で取得した市町村名が含まれるレコードを取得する。
という感じならば、「近隣=同一市町村」という処理ができると思います。まぁ、質問者さんが考えておられる「近隣」とは違うかもしれませんが・・・。
回答ありがとうございます。
なるほど、まだ仕様が確定していない部分もあるので「近隣」の定義がはっきりしていないのですが、DBレコード全てについて判定するのは処理速度上問題があるかもしれませんので、manimani2さんのいっしゃるようにSQLを利用して該当するレコードのみを抜き出すという処理が適していますね。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Google Maps 郵便番号を Google マップで調べる方法を教えてください 環境としては 日本に滞在して間もない 3 2022/03/23 12:25
- 銀行・ネットバンキング・信用金庫 ゆうちょ銀行に口座を持つ方、ゆうちょ銀行に詳しい方に聞きます。 9 2023/08/03 20:24
- Yahoo!メール Yahooメールにログインできません 2 2022/12/12 07:46
- アイドル・グラビアアイドル ジャニーズショップでログインしてもグッズが買えないです。 購入画面になって、個人情報を入力する画面で 2 2022/04/04 17:12
- Access(アクセス) 【至急・画像あり】建物or住所から電話番号を出す方法を教えてください 3 2023/02/17 11:58
- メルカリ ゆうゆうメルカリ便の反映が遅いのは知ってます 昨日の朝 8時53分に発送通知のメールが来ました 現在 3 2022/06/20 12:11
- その他(ビジネス・キャリア) 国税庁法人番号公表サイトの検索で会社の名前入れて所在区や郵便番号入れて情報が出てこない 2 2023/04/30 10:00
- その他(お金・保険・資産運用) エラー紙幣 1万円札で 壱万円の表記の万の字が半分近く(周辺を含め)消えています。 郵便局で下ろした 4 2022/08/16 22:03
- 郵便・宅配 専用郵便番号なので住所なしで届くという場合 7 2022/04/14 14:08
- 郵便・宅配 郵送の仕方を教えてください 3 2022/09/26 21:45
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Yahoo! JAPAN IDを新規取得でき...
-
PHP の cURL で、htmlを画像へ...
-
アクセスの度にIPアドレスを変...
-
Excel VBA:特定の文字列以降(...
-
VBSであるAD情報を取得したいで...
-
IPアドレスの取得方法
-
PHPを使って、別サイトの一部を...
-
積立投資してます。現在平均取...
-
表示している画面サイズの取得方法
-
VBS「開いているページ」のURL...
-
VB or VBScriptでPCの製造番号...
-
IPアドレスとMACアドレスを取得...
-
VBA web情報取得(スクレイピン...
-
バッチファイルでPCのモデル名...
-
リンク表示方法について2
-
ローカルのコンピュータ名を取...
-
不正競争防止法に該当するので...
-
C++で特定のURLにアクセスする...
-
検索結果を昇順、降順でソート...
-
ps3で久しぶりにCDの音楽情報取...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
「取得先」という表現について
-
Yahoo! JAPAN IDを新規取得でき...
-
ps3で久しぶりにCDの音楽情報取...
-
IPアドレスとMACアドレスを取得...
-
format関数について
-
Excel VBA:特定の文字列以降(...
-
【VBA】EXCELブックを開かずに...
-
EXCEL、マクロ-改ページ行番号...
-
ローカルのコンピュータ名を取...
-
【C#】FindWindowExの使い方を...
-
VBAでPDFのアクティブページ番...
-
ミュージックのアートワークを...
-
VBS「開いているページ」のURL...
-
VBAでPDFファイルの文書のプロ...
-
VB or VBScriptでPCの製造番号...
-
表示している画面サイズの取得方法
-
積立投資してます。現在平均取...
-
各クライアントマシンのログイ...
-
アクセスの度にIPアドレスを変...
-
VB.NETでボリュームを取得・設...
おすすめ情報