gpt4 book ai didi

php - Google map 通过更改 mysql 坐标更新标记

转载 作者:行者123 更新时间:2023-11-29 13:50:19 25 4
gpt4 key购买 nike

我一直在寻求这方面的帮助,但我发现的一切都没有帮助我。

我正在尝试找到一种解决方案,让我能够在 Google map 上“实时”绘制移动物体的 GPS 坐标。

每个对象的 GPS 坐标将不断更新到 MySQL 数据库中,我想知道是否可以读取每个更新的坐标(也许每隔几秒读取一次),然后重新绘制标记坐标Google map ,用户无需刷新页面。这可以做到吗?或者使用 Google map API 是否太复杂

提前致谢。

编辑>我当前的代码。

<?php
mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");
$sql="SELECT * FROM `gps`";
$result=mysql_query($sql);
while($row = mysql_fetch_array($result))
{
$_SESSION['x']=$row['x'];
$_SESSION['y']=$row['y'];
$_SESSION['driver']=$row['driver'];
$_SESSION['callsign']=$row['username'];
}?>
<head>
<style type="text/css">
html { height: 100% }
body { height: 100%; margin: 0; padding: 0 }
#map-canvas { height: 100% }
</style>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no">
<meta charset="utf-8">
<title>Live Viewer</title>
<script src="https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=false"></script>
<script>
function initialize() {
var myLatlng = new google.maps.LatLng(<?php echo $_SESSION['x'].",".$_SESSION['y']; ?>);
var mapOptions = {
zoom: 11,
center: myLatlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
}
var map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions);

var marker = new google.maps.Marker({
position: myLatlng,
map: map,
title: '<?php echo $_SESSION{'']; ?>'
});
}

function movemarker( map, marker ) {

marker.setPosition( myLatlng );
map.panTo( myLatlng );

};

google.maps.event.addDomListener(window, 'load', initialize);

</script>
</head>
<body>
<div id="map-canvas"></div>
</body>

最佳答案

只需使用匿名函数设置一个 setInterval() ,该函数调用检索坐标的 Ajax 请求。

然后只需更新正确的标记即可。

类似的东西

setInterval(function(){
jQuery.getJSON('/getmarker.php?id=1234', function(data){
updateMarker(marker, data.lat, data.lng);
});
}, 5000);

当然,您不必使用 jQuery 来处理 ajax 内容,但它确实会让事情变得更容易......

关于php - Google map 通过更改 mysql 坐标更新标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16775941/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com