2011-12-06 6 views
-3

この質問はネット上で尋ねられましたが、まだ解決策が見つかっていません。PHPを使用して地図上の国を強調表示

私の必要としているのは、データベースのデータに基づいて、アフリカの地図上で国を強調する必要があります。これはウェブベースのゲームのためのもので、私はGoogleマップなどを使いたくありません。

これは新しい問題ではありません。そこにPHPライブラリがあるとか、少なくとも必要な情報が入っているファイルがあると思います(多くの座標が必要です)。マップはインタラクティブ(オンクリックまたはオンホバーイベントなし)である必要はなく、可能であればこのサーバー側を維持したいと考えています。国を表示し、データベースのデータに基づいて国を色付けするだけです。

しかし、PHPソリューションをお持ちでない場合は、Javascriptを使用する代替オプションに感謝します(データは引き続きDBから抽出する必要があります)。

最後の質問 - 各国の.PNGイメージを単純に作成して残りの地図を透明にし、マップを形成するように配置することがどれほど難しいでしょうか?その場合、個々の国を強調するPHP関数がありますか?

+1

素晴らしい!あなたはスペックを持っています、今何を試しましたか? –

+0

私が試したことがないのは、次の月にそれをやりたいと思っていないので、マップポイントを自分自身でプロットすることです。私は解決策のためにインターネットを検索しようとしました。私が見つけていないのは答えですが、私が見いだしたのは、さまざまなスレッドへの唯一の貢献が半刺激的な皮肉な発言である百人です。いいえ、ありがとうございます。 101. – robert

+0

地図を使って作業しているとすれば、Flash + ActionScriptの使用を検討しましたか? ActionscriptはJavaScript経由でPHPと話すことができます。また、PHPはActionscriptと対話することもできます。こうすることで、PHPでのユーザーアクションを指定してFlashのマップ要素を強調表示したり、マップとのユーザーのやり取りに基づいてPHPでアクションを実行したりできます。 –

答えて

2

PHPでこれを簡単に行うことはできませんが、jQueryプラグインのimageMapsterを使用すると簡単です。ここにあなたに適した地図デモがあります。

http://www.outsharked.com/imagemapster/examples/usa.html

あなたはハイライトはCSSベースまたは代替画像のいずれでもよいなど、イメージマップとして設定して、負荷にマウスオーバーするマップ領域を強調するために、それを設定し、クリックすることができます。

これは非常によく文書化されており、私にとって何度も命を救ってきました。

<script> 
    $(document).ready(function() { 
     $('#IMAGE_NAME').mapster('set',true,'AREA_ID'); 
    }); 
</script> 

EDIT:これは実際に私はこれをお勧めしてきた2回目今日で

は、ここでは、そのオン状態にエリアを設定する方法の例です。私はそれとは関係がありません。ただ、それは素晴らしいと思います。

+0

それは素晴らしい、ちょうど私が必要としたように見えます。どうもありがとうございます。 – robert

+0

心配はいりません。それがあなたの受け入れられた答えであれば、それを答えとしてフラグを立てることを忘れないでください。それはあなたが将来、より多くの回答を得るのを助け、私のサイトのリポートを助けるでしょう。 Ta。 – SpaceBeers

+0

旗、ありがとうございました。もう1つのこと - 結局クリックイベントを使用することに決めた場合、Ajaxを使ってPHPスクリプトにデータを送ることができると思いますか?基本的には、クリックされた領域に関連付けられた名前/ IDを保存するだけです。 – robert

0

まず、各国をある種のイメージマップやSVGツールで追跡し、すべての点をマッピングする必要があります。それはしばらく時間がかかるでしょう - あなたがそれを済ませたら、おそらくHTMLのキャンバスタグを使ってポイントを画像上のポリゴンに合成することができます。

+0

Fireworksでかなり短時間でそれを実行してからエクスポートし、HTMLから座標を取得できます。 – SpaceBeers

+0

ありがとうございます。 mapper.js(http://www.netzgesta.de/mapper/)が使えるように見えるSVGツールの1つです。これに関する情報は? – robert

2

VectorWorkz GeoChartは、データベースからのデータに基づいてマップ領域の色を変更できるjQueryプラグインの一種です。また、マップ領域の色が自動的に変更されるように、データベースデータを領域にバインドすることもできます有界データ値が変化したとき。

関連する問題