皆さん。私に簡単な紹介を許可してください。例えばPHPを使用してマップサーバでクリックされたポリゴンをクエリする方法はありますか?
:私のMapServerはCGIモードを使用します。私は'us_states.shp'
という名前のシェープファイルを持っています。そこには'state_name'
の列があります。正しい'.map'
ファイルと'.html'
テンプレートを作成した場合は、「フォーム」タグで地図画像をクリックすると、特定の米国州の名前を取得する必要があります。なぜこれが起こるのですか? '.html'テンプレートには文字列:[state_name]があるためです。
は今、私はいくつかの変更を行います。
- 空間データは、postgreSQLのデータベースであり、かつ
'state_name'
をという名前の列もあります。 - 私はPHPを使用してクエリマップを表示しています。
次に、'state_name'
の値はどのように取得できますか?クリックした状態の色を変更するにはどうすればよいですか?
私の進捗率:
- 。私はpostgreSQLを使って '.map'ファイルから元の地図画像を表示することができ、画像内のすべての状態の名前も表示できます。
- b。簡単な
'QUERYMAP'
段落がすでに '.map'ファイルに存在しています。 - c。私は 'の.php' ファイルにこれらのコードを追加:
$ポイント - > setXY($ img_x、$ img_y)。
$ map-> queryByPoint($ point、 'MS_SINGLE'、-1);
$ image = $ map-> drawQuery();
しかし、最初は、画像の座標は、データベース内のデータベースのもの、並びに座標がいずれかの緯度または経度されていないません!私はそれらを変換する必要がありますか? の2番目のメソッド'queryByPoint'
は状態名を取得できませんでした。'queryByAttributes'
を使用しますか?それの使い方?
私は分かりません...本当にわかりません...あなたの助けが必要です。