我有一张桌子,上面有一些位置。例如:
ID LAT LNG
1 40.759139 -73.979723
我正在尝试从他的IP地址获取用户所在的国家/地区(比方说我拥有它,例如德国,柏林)。
然后浏览我的数据库中的所有位置并选择靠近或在该城市内(城市内更好)的位置并以这种方式显示在地图上:http://code.google.com/apis/maps/documentation/javascript/examples/event-closure.html
现在我看到了这个问题: how do i find near by locations to a given location using google map api
这不是我想要的,虽然它很接近。
任何人都知道如何才能完成我想要做的事情?
谢谢,
答案 0 :(得分:1)
想出来,你就是这样做的:
注意:$ default包含您最初要显示的城市lat / lng。 mapEvents()返回一个包含事件的所有lat / lng / title的数组。
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script>
<script type="text/javascript">
var map;
function initialize() {
var myLatlng = new google.maps.LatLng(<?= $default ?>);
var myOptions = {
zoom: 9,
center: myLatlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
}
map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
<?php
$pinpoints = mapEvents();
foreach ($pinpoints as $pinpoint) {
$loc = $pinpoint['UA_LAT'] . "," . $pinpoint['UA_LNG'];
echo("
var myLatlng = new google.maps.LatLng(" . $loc . ");
var marker = new google.maps.Marker({
position: myLatlng,
map: map,
title: '" . $pinpoint['EVENT_NAME'] . "'
});
");
$loc = "";
}
?>
}
</script>