我正在尝试开发一个站点,该站点根据一组预定义的坐标在 Google 地图上模拟移动的公共汽车。我正在研究 PHP、HTML 和 Javascript(Google Maps Api)。保存坐标的数据库位于本地主机上。我的问题与向数据库中所有坐标移动的公共汽车的实际模拟有关。
解释一下:数据库如下所示:
id latt lon
1. 53.4877 -2.27519
2. 53.4859 -2.27489
等有14个条目。
连接数据库的 PHP 脚本:
<?php
$host = "localhost";
$user = "hidden";
$pass = "";
$databaseName = "database";
$tableName = "locations";
$con = mysql_connect($host, $user, $pass);
$dbs = mysql_select_db($databaseName, $con);
$result = mysql_query("SELECT * FROM $tableName");
$data = array();
while ($row = mysql_fetch_row($result)) {
$data[] = $row;
}
echo json_encode($data);
?>
javascript函数:
function moveBus(map, marker)
{
$.ajax({
url: 'api2.php',
data: "",
dataType: 'json',
async: false,
success: function(data)
{
for (var i in data)
{
var row = data[i];
var latt = row[1];
var lon = row[2];
moveMarker(map, marker, latt, lon);
}
}
})
};
moveMarker 函数:
function moveMarker( map, marker, latt, lon) {
setTimeout( function(){ marker.setPosition( new google.maps.LatLng( latt , lon ) ); }, 3500 );
};
正如您所理解的那样,我现在只是在循环完成后在最后一组坐标上发送总线标记,而不是显示到达那里的整个路线。我尝试了很多不同的方法来实现这一点,但都没有成功。
有任何想法吗?
先感谢您。