データベーステーブルは20秒ごとに新しいデータで更新されます。私は新しい緯度& langで地図上のマーカーを動かすことはできませんでした。私は30秒ごとにクエリを実行して、テーブルの最後のレコードを取得し、マーカーの位置を更新しようとしました。マップがロードされ、マーカーが表示され、javascript関数も呼び出されます。しかし、マーカーは動かない。 )(..リアルタイムのデータでGoogleマップ上のマーカーを移動
<?php
include "db_connect.php";
$sql="SELECT * FROM temperature_details ORDER BY id DESC LIMIT 1 ";
$result=mysql_query($sql);
$firstrow = mysql_fetch_assoc($result);
function getNewLatLang(){
$sql="SELECT * FROM temperature_details ORDER BY id DESC LIMIT 1 ";
$result=mysql_query($sql);
$latLang = mysql_fetch_assoc($result);
echo $latLang['latitude'].','. $latLang['longitude'];
}
?>
<script src="http://maps.googleapis.com/maps/api/js?key=API_KEY&libraries=geometry"></script>
<div id="map" style="height:500px;width:100%;" ></div>
<script>
function initialize() {
var myLatLng = new google.maps.LatLng(<?php echo $firstrow['latitude'].','. $firstrow['longitude'];?>),
myOptions = {
zoom: 16,
center: myLatLng,
mapTypeId: google.maps.MapTypeId.ROADMAP
},
map = new google.maps.Map(document.getElementById('map'), myOptions ),
marker = new google.maps.Marker({position: myLatLng, map: map});
marker.setMap(map);
moveMarker(map, marker);
}
function moveMarker(map,marker) {
setInterval(function(){
marker.setPosition(new google.maps.LatLng(<?php echo getNewLatLang(); ?>));
map.panTo(new google.maps.LatLng(<?php echo getNewLatLang(); ?>));
console.log("I am working");
}, 30000);
};
initialize();
</script>
私はマーカーを削除し、similで新しいものを設定しましたarの状況。回避策はありますが、その仕事はします。 – Max
@Maxコードを入れてください。 – Hirantha
今はできません。携帯電話に限られた数日間、道路上にある。私は試しました。 – Max