googlemapにおいて複数条件絞り込みでマーカーを表示する方法に関して説明
しているサイトなどご教えていただきたく。
または、その方法をご存じないでしょうか。

<例>

検索条件(1) 都道府県(ドロップダウンリスト表示)
検索条件(2) 市
      ((1)で選択した都道府県に従属した市のみ
       ドロップダウンリスト表示候補となる)
検索条件(3) 区
      ((2)で選択した都道府県に従属した区のみ
       ドロップダウンリスト表示候補となる)
「検索実行」ボタンを押すと検索条件(3)に該当するマーカーのみ表示される。
     

このQ&Aに関連する最新のQ&A

A 回答 (1件)

多分、根本的な考え方の部分でちょっと違っているような気がします。



Google Map APIは、マップを表示し、そこにマーカーなどを表示するAPIです。これ自体にはデータベース的な機能があるわけではありません。Google Mapは、ただ指定されたマーカーを表示するだけのものでしかありません。

ですから、データを保存し検索するのは、Google Mapとは関係ない話です。一般的には、サーバー側にデータベース関係の処理を用意しておいてそれを利用するでしょう。流れとしては、以下のようになるでしょう。

・クライアント(ブラウザ)側
1. 検索条件のリストを選択する。
2. 検索ボタンを押す。
3. JavaScriptのスクリプトが呼び出され、Ajaxでサーバーに検索を要求する。
・サーバー側
4. 要求を受け取り、データベースからデータを検索する。
5. 取得したデータをJSONなどのデータにしてクライアントに送り返す。
・クライアント側
6. Ajax通信の結果を受け取る。
7. それをもとにGoogle Mapにマーカーを追加する。
    • good
    • 0
この回答へのお礼

ご回答、ありがとうございました。

早速、shylockさんのアドバイスに従い、参考サイトを探し回って、下記を見つけました。
しばらく格闘してみます。(プログラミングって格闘技?かもしれません。)

https://developers.google.com/maps/articles/phps …


※ちなみに、googlemapのべんきょうを下記サイトを中心にしていた矢先でしたので、基本のキでありましょうサーバー・クライアント間の検索に気が付きませんでした。

下記サイトの主、菊池さんからも
「大規模データベースならサーバー側で検索し結果をクライアント側で表示、
 小規模データベースなら、クライアント側に全データを取り込み
 クライアント側で検索・表示も有りと思います。」
とのアドバイスをうかがいました。

http://kikuchisan.net/gmap/gmapv3.html

お礼日時:2014/05/17 10:05

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qgrep の検索条件

grep で以下のような条件を作ることはできますでしょうか。
※環境に依存するかわかりませんが、 UNIXを使います。

■検索条件

含める文字列:AAA

and

除外する文字列:BBB or CCC or DDD or EEE or FFF

Aベストアンサー

grep AAA | grep -v -E 'BBB|CCC|DDD|EEE|FFF'

QExcel vba 条件検索?について

できるのかどうかわからないのですが
Sheet1 にIPアドレスの一覧があり
Sheet2 にA列に192.10.2.* B列にhonsya
と書いた一覧があるとして
(例に挙げてるIPは適当です・・・。)
Sheet1のIPアドレスの第3オクテッド目までの値とSheet2のA列の第3オクテッド目までの値を比べてSheet2の値に該当したものB列の値を出力するその際に
出力データの前後に文字を足して出力。
Sheet1にあるデータ分を行い データは出力したデータの下に
出力していく
といった形をとりたいのですが 本当にできるのでしょうか?

Aベストアンサー

Findメソッドでのデータ検索  
http://www.eurus.dti.ne.jp/~yoneyama/Excel/vba/vba_find.html#find
にある「【例2】部分一致 」によって抽出を行なうような事ですか?

オートフィルタ(AutoFilterメソッド)でのデータ抽出 
http://www.eurus.dti.ne.jp/~yoneyama/Excel/vba/vba_autofilter.html
でも出来るかも知れません。


希望する結果がよくわからなかったです。

Q複数の条件で検索したい!

複数の条件で検索したい!
現在下記のコードでフォームのtxtBoxとcmbBoxの条件でサブフォームを絞込みしています。
これを複数の条件を満たしたレコードだけを絞込みしたいのですが、
txtBox1の条件も拾うしcmb1の条件も拾ってしまう・・・
これを
txtBox1の条件を満たした中のcmb1条件も満たすのレコードで絞込みしたいのですが、
どのようにしたら良いか教えてください。よろしくお願いいたします。
Private Sub cmd検索_Click()
If Not IsNull(txtBox1) Then
サブフォーム.Form.Filter = "顧客コード like '*" & txtBox1.Value & "'"
サブフォーム.Form.FilterOn = True
End If
If Not IsNull(cmb1) Then
サブフォーム.Form.Filter = "顧客区分 like '" & cmb1.Value & "'"
サブフォーム.Form.FilterOn = True
End If
If Not IsNull(txtBox2) Then
サブフォーム.Form.Filter = "顧客名カナ like '*" & txtBox2.Value & "*'"
サブフォーム.Form.FilterOn = True
End If

複数の条件で検索したい!
現在下記のコードでフォームのtxtBoxとcmbBoxの条件でサブフォームを絞込みしています。
これを複数の条件を満たしたレコードだけを絞込みしたいのですが、
txtBox1の条件も拾うしcmb1の条件も拾ってしまう・・・
これを
txtBox1の条件を満たした中のcmb1条件も満たすのレコードで絞込みしたいのですが、
どのようにしたら良いか教えてください。よろしくお願いいたします。
Private Sub cmd検索_Click()
If Not IsNull(txtBox1) Then
サブフォーム.Form.Filter = "顧客コ...続きを読む

Aベストアンサー

一例。試さないで書いてますが。
On Error Resume Next
dim p, q, s
p = Array( Array( txtBox1, "顧客コード" ), Array( cmb1, "顧客区分" ), Array( txtBox2, "顧客名カナ" ) )
s = "": For Each q In p: If q(0).Value<>"" Then s = s & " And ["&q(1)&"] like '" & q(0).Value & "*'"
Next: s = Mid( s, 6 )
If s <> "" Then With サブフォーム.Form: .Filter = s: .FilterOn = True: End With

QC#でのドライブリスト・ファイルリストは?

VB6.0でいうところのドライブリスト・ファイルリストのコントロールはC#には存在しないのでしょうか?
調べてみたのですが、それらしきものが見つからず・・・ご存じの方、教えてください。

Aベストアンサー

VB6コンパチブルコンポーネントに『DriveList』『DirList』『FileList』コンポーネントがあります
ツール > ツールボックスアイテムの選択で『.NET Framework コンポーネント』タブ内で探してみてください

QMYSQLでの条件検索ORを使って・・・

MYSQLを使って、条件つきの検索をしたいのですが、下記のSELECT文を使って、検索をしています。
下記のser_table.group_idが01のものと、04のものを両方とってきたいのですが、うまくできないので、教えていただけないでしょうか?


$STRSQL=qq{SELECT };
$STRSQL=$STRSQL.qq{awaytable.iput_charg_id, awaytable.number, awaytable.total_day, awaytable.news_comp, awaytable.news_title, awaytable.news_content, awaytable.URL_news, awaytable.news_gif };
$STRSQL=$STRSQL.qq{FROM awaytable, ser_table };
$STRSQL=$STRSQL.qq{WHERE ser_table.iput_charg_id = awaytable.iput_charg_id };
$STRSQL=$STRSQL.qq{AND ser_table.iput_charg_id <> '995' };
$STRSQL=$STRSQL.qq{AND ser_table.group_id = '04' };
$STRSQL=$STRSQL.qq{AND ser_table.group_id = '01' };
$STRSQL=$STRSQL.qq{ORDER BY awaytable.total_day DESC };
$STRSQL=$STRSQL.qq{LIMIT $pos,$pagesize };

MYSQLを使って、条件つきの検索をしたいのですが、下記のSELECT文を使って、検索をしています。
下記のser_table.group_idが01のものと、04のものを両方とってきたいのですが、うまくできないので、教えていただけないでしょうか?


$STRSQL=qq{SELECT };
$STRSQL=$STRSQL.qq{awaytable.iput_charg_id, awaytable.number, awaytable.total_day, awaytable.news_comp, awaytable.news_title, awaytable.news_content, awaytable.URL_news, awaytable.news_gif };
$STRSQL=$STRSQL.qq{FROM awaytable, ser_ta...続きを読む

Aベストアンサー

WHERE句の条件文の部分がser_table.group_idが01且つ04であると
指定されています。

これを以下のようにser_table.group_idが01又は04になるように
ORと括弧を使って下さい。

WHERE ser_table.iput_charg_id = awaytable.iput_charg_id
AND ser_table.iput_charg_id <> '995'
AND (ser_table.group_id = '04'
OR ser_table.group_id = '01')


人気Q&Aランキング

おすすめ情報