每5秒从数据库抓取数据到谷歌地图
Fetching data from database every five seconds to Google Map
我正在开发一个谷歌地图应用程序,纬度和经度每五秒钟从外部设备传入并存储到数据库中。
所以我必须每五秒查询一次数据库并获得数据库的新经纬度并据此移动标记
怎么做?写ajax调用好吗?
下面是每隔几秒提取数据并重新绘制标记的示例:http://www.robotwoods.com/dev/so_septa.html
这是它调用的PHP:
<?php
$route=(isset($_REQUEST['route']))?$_REQUEST['route']:23;
echo file_get_contents("http://www3.septa.org/transitview/bus_route_data/".$route);
?>
我会以正确的方式引导你。我想我至少可以这样做:
a)你可以有一个函数,使用ajax每隔一段时间查询你的服务器(查看像jquery这样的库),并在函数的回调函数中处理响应。
b)你的服务器将发送一个响应到服务器理想情况下,它将是json响应的形式
{
id:<>,
lat:
lng:
}
c)通过谷歌地图API来了解如何删除标记等,您可以在关联数组中维护标记的哈希值,如标记[key],其中键将是标记的标识符,如果和当标记更新时,您可以使用此关联数组来删除标记:
markers[id].setMap(null);
在回调中添加标记的代码:
var options = {
position: new google.maps.LatLng(lat, lng);,
icon: image,
zIndex: zIndex,
};
options.map=map;
var marker = new google.maps.Marker(options); //construct marker
markers[key] = marker; //store the marker in array
相关文章:
- 不显示带有本地json文件数据的谷歌地图脚本
- 缓存谷歌地图数据
- 谷歌地图/Angular JS:地图更新并不总是反映数据,并且可以't删除标记
- 将iPhone位置数据输入谷歌地图
- 使用来自URL的JSON数据来显示谷歌地图标记-如何
- 基于数据的谷歌地图API标记
- 如何通过使用谷歌地图从文本字段提交来修改javascript对象中的数据
- 谷歌地图获取kml数据并显示它们
- 谷歌地图/融合表Javascript HTML赢得't显示/可视化所有多边形数据(通过色标)
- 在谷歌地图的JSON数据中循环
- 谷歌地图API-在从ajax页面加载新数据之前清除标记、多段线
- 谷歌地图标记不显示ajax json数据
- 将JSON文件中的数据加载到谷歌地图中的地图标记中
- 当点击处理程序添加到谷歌地图圆圈标记时,无法访问对象数据
- 谷歌地图数据类型抛出类型错误:can't将未定义转换为对象
- 如何执行Ajax GET请求以从rails获取数据并将其传递给javascript(谷歌地图)
- 谷歌地图样本阅读数据
- 在谷歌地图中绘制闪电数据
- 试图在网站上抓取谷歌地图api生成的动态数据,但正常抓取返回空白
- 我可以在谷歌地图上使用OpenStreetMap数据创建获取路线吗?如何