使用sql&;在google地图中排列多个点;php?
我是PHP的新手。上面的代码工作正常,但只使用一个标记。如果我用top 1搜索一个点就可以了 当我改变顶部的数字时,如10仍然显示一个或最后一个标记。如何显示多个标记? 我不想使用json。 我觉得有点像var数组。 多谢各位使用sql&;在google地图中排列多个点;php?,php,sql,google-maps,Php,Sql,Google Maps,我是PHP的新手。上面的代码工作正常,但只使用一个标记。如果我用top 1搜索一个点就可以了 当我改变顶部的数字时,如10仍然显示一个或最后一个标记。如何显示多个标记? 我不想使用json。 我觉得有点像var数组。 多谢各位 html{高度:100%} 正文{高度:100%;边距:0;填充:0;颜色:白色} #地图画布{高度:100%} 您确定您的SQL请求返回多个结果吗 把它放在循环之前: 变量映射选项={ 中心:新的google.maps.LatLng( “.$row['lat'].”
html{高度:100%}
正文{高度:100%;边距:0;填充:0;颜色:白色}
#地图画布{高度:100%}
您确定您的SQL请求返回多个结果吗
把它放在循环之前:
变量映射选项={
中心:新的google.maps.LatLng(
“.$row['lat'].”、“.$row['long'].”,
缩放:13
};
var map=new google.maps.map(document.getElementById(“地图画布”),
地图选项);
var mylatng1=新的google.maps.LatLng('。
$row['lat']..,'.$row['long'.])
也许还有其他一些错误。您可能会发现它很有用:只创建一次地图(当前,您正在为数据库中的每一行创建一个带有一个标记的新地图,当查询结束时,最后一个仍保留):
函数初始化(){
var bounds=new google.maps.LatLngBounds();
//初始化映射
变量映射选项={
中心:新google.maps.LatLng(0,0),
缩放:13
};
var map=new google.maps.map(document.getElementById(“地图画布”),
地图选项);
//居中并缩放地图以显示所有标记。
映射边界(bounds);
}
google.maps.event.addDomListener(窗口“加载”,初始化);
并在SQL请求后创建地图,如果您想访问您的位置以使地图居中。谢谢Tom A,@geocodezip得到了我想要的!谢谢大家!!@geocodezip的答案适合我!我只创建一次地图。。。我正在为一个标记创建一个地图,已解决!谢谢你救了我的周末!
function initialize() {
var bounds = new google.maps.LatLngBounds();
// initialize the map
var mapOptions = {
center: new google.maps.LatLng(0,0),
zoom: 13
};
var map = new google.maps.Map(document.getElementById("map-canvas"),
mapOptions);
<?php
... then add markers to it
$result = mssql_query($query);
while($row = mssql_fetch_assoc($result))
{
echo 'var myLatlng1 = new google.maps.LatLng('.$row['lat'].', '.$row['long'].');
var marker = new google.maps.Marker({
position: myLatlng1,
map: map,
animation: google.maps.Animation.DROP,
title:"'.$row['Cabno'].','.$row['Hora'].'"
});
bounds.extend(marker.getPosition());';
}
?>
// center and zoom the map to show all the markers.
map.fitBounds(bounds);
}
google.maps.event.addDomListener(window, 'load', initialize);