我一直在搜索,试图找到简单的代码来向Google地图添加多个标记。我已经将代码调整到简单的标记示例,希望它可以工作。我没有从PHP代码中得到任何错误,所以我猜测地图代码搞砸了。这是我到目前为止的代码:
<script type="text/javascript">
function initialize() {
var latlng = new google.maps.LatLng(<? echo $latlonlocation; ?>);
var myOptions = {
zoom: <? echo $zoom; ?>,
center: latlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
var marker = new google.maps.Marker({
position: latlng,
map: map
});
var circle = new google.maps.Circle({
map: map,
radius: <? echo $searchradius; ?>
});
circle.bindTo('center', marker, 'position');
<?
$mapcounter = "01";
while ($row106 = mysql_fetch_array($r106)) {
if ($row106["mna"] == 1 && $row106["mrt"] == 1) {
$imagecolor = "yellow";
} elseif ($row106["mna"] == 1 && $row106["mrt"] == 0) {
$imagecolor = "darkblue";
} elseif ($row106["mna"] == 0 && $row106["mrt"] == 0) {
$imagecolor = "red";
} else {
$imagecolor = "red";
}
$imagenumber = sprintf("%02d",$mapcounter);
echo "var image = 'mapicons/$imagecolor$imagenumber.png';";
echo "var DealerMarker$imagenumber = new google.maps.Marker({";
$lats = $row106["latitude"];
$lons = $row106["longitude"];
echo "position: $lats $lons,";
echo "map: map,";
echo "icon: image";
$mapcounter++;
echo "});";
}
?>
google.maps.event.addDomListener(window, 'load', initialize);
</script>
我还尝试修改末尾的});
,使其在数组循环内部或外部。两者都没有奏效。在我向它添加数组循环之前,确切的代码使用静态变量。任何人都可以让我朝着正确的方向前进
答案 0 :(得分:1)
尝试更换
echo "position: $lats $lons,";
与echo "position: new google.maps.LatLng($lats, $lons),"