该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
大家好,刚使用百度地图API,请教大家一个问题,谢啦!
我需要从我的数据库中取出字段为"city"的所有数据,然后通过bdGEO()函数在地图上标注这些城市,我是用PHP连接并查询数据库的。但是需要将取到的数据存在一个JS数组中,如:
var adds = ["武汉","长沙"];
请问大家怎么将用php取到的数组变成JS中的数组作为参数给JS中的函数呢?谢谢啦,代码如下:
//php连接数据库代码
$con = mysql_connect("localhost","root","85208520");
$i = 0;
$k = 0;
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("test", $con);
mysql_query("set names GB2312");
$result = mysql_query("SELECT * FROM person");
while($row = mysql_fetch_array($result))
{
$cityarry[$i++] = $row['city']; //保存数据到数组$cityarry中
}
mysql_close($con);
?>
//JS代码
var map = new BMap.Map("l-map");
map.centerAndZoom(new BMap.Point(103.269945,41.86713), 5);
var index = 0;
var myGeo = new BMap.Geocoder();
var adds = ["武汉","长沙"]; //此处不知如何转换
//eval('(' + <?php json_encode($cityarry);?> + ')'); //试图用JSON方式,失败
function bdGEO(){
var add = adds[index];
geocodeSearch(add);
index++;
}
function geocodeSearch(add){
if(index < adds.length){
setTimeout(window.bdGEO,0);
}
myGeo.getPoint(add, function(point){
if (point) {
var point2 = new BMap.Point(point.lng, point.lat)
var marker = new BMap.Marker(point2);
map.addOverlay(marker);
map.addHotspot(hotSpot);
}
}, "江苏省");
}
map.enableScrollWheelZoom();
//bdGEO();
感激不尽!!