私はこのコードを持っています
http://jsfiddle.net/DanielMontenegro/7pdU4/3/
ここで、その地図をサイトに配置して、ジオコーディングサービスを通じて特定のイベントを報告できるようにしたいとします。そのイベントのアドレス/座標をテーブルに取得し、すべてのユーザーレポートを単一のデータベースに収集するにはどうすればよいかを尋ねたいと思います。
私はこのコードを持っています
http://jsfiddle.net/DanielMontenegro/7pdU4/3/
ここで、その地図をサイトに配置して、ジオコーディングサービスを通じて特定のイベントを報告できるようにしたいとします。そのイベントのアドレス/座標をテーブルに取得し、すべてのユーザーレポートを単一のデータベースに収集するにはどうすればよいかを尋ねたいと思います。
ドキュメントの「記事」セクションには、Google MapsAPIv3とPHP/MySQLとのインターフェースに関する多くの情報があります。
これはあなたの質問に答えているように見えます。情報ウィンドウからデータベースへ:ユーザーが追加したフォームデータの保存
ある種のアクションリスナー(できれば、ユーザーがマップをクリックするのをリッスンするリスナー)を設定する必要があります。次に、結果のlat / lngをジオコーディングし、受け取ったものをテーブルに保存します。
以下のコードを参照して試してください。
私はphp静的配列を使用しています。データベースに接続して、要件に応じて配列を作成できます。以下の配列を参照してください。
<?php $item = array('jaipur, rajasthan,india', 'udaipur, rajasthan,india'); ?>
私のコードの下を見てください。
<html>
<head>
<script src="http://maps.google.com/maps?file=api&v=2&key=AIzaSyDwFjOazEAe1MI7nHV6vUwkWytOp8LH2Zk" type="text/javascript"></script>
</head>
<body onload="initialize();">
<?php $item = array('jaipur, rajasthan,india', 'udaipur, rajasthan,india'); ?>
<script>
var map = null;
var geocoder = null;
function initialize() {
if (GBrowserIsCompatible()) {
map = new GMap2(document.getElementById("map_canvas"));
var addresses = ["<?php echo implode ('","', $item); ?>"]
var geocoder = new GClientGeocoder();
//var addresses = ["A II Z, Ibn Battuta Mall, Sheikh Zayed Road, 5th Interchange, Jebel Ali Village, Dubai","A. Testoni,Dubai Festival City Mall, Ground Floor, Dubai", "Abdulla Hussain Khunji, The Dubai Mall,Downtown, Abu Dhabi"];
var curIndex = 0;
function showAddress() {
var _cur = addresses[curIndex];
geocoder.getLatLng(
_cur,
function(point) {
if (!point) {
//alert(_cur + " not found");
//map.setCenter(new GLatLng(0, 0), 6);
//map.setUIToDefault();
} else {
//console.log(_cur+":"+point);
//alert(_cur);
var cafeIcon = new GIcon(G_DEFAULT_ICON);
// Set up our GMarkerOptions object
markerOptions = { icon:cafeIcon };
map.setCenter(point, 6);
var marker = new GMarker(point, markerOptions);
map.addOverlay(marker);
var sales = new Array();
sales = _cur.split("|");
//Add click event on push pin to open info window on click of the icon
GEvent.addListener(marker, "click", function() {
marker.openInfoWindowHtml("<p class='para1bold' style=\"font-weight: bold;\">Address <br /><span class='para1' style='font-weight:normal;'>" + sales[1] + "</span></p>");
});
//Provides map,satellite,hybrid and terrain views in the map along with zoom control
map.setUIToDefault();
}
//do next after done
curIndex++;
if(curIndex<addresses.length)
showAddress();
}
);
}
showAddress();
}
}
</script>
<div id="map_canvas" style="width:100%; height:750px;"></div>
</body>
</html>