<div id="map" style="width: 500px; height: 500px;"></div>
<?php $apiKey = 'あなたのAPI鍵'; echo <<<HTML <script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak={$apiKey}"></script> <script type="text/javascript"> // マップオブジェクトを作成します var map = new BMap.Map("map"); // マップの中心点を北京に設定します map.centerAndZoom(new BMap.Point(116.404, 39.915), 11); // マウスホイールズームを有効にします map.enableScrollWheelZoom(); </script> HTML; ?>
<?php // データベースからの緯度および経度情報をクエリします $markers = [ ['lat' => 39.9225、 'lng' => 116.396]、 ['lat' => 39.935、 'lng' => 116.403]、 ['lat' => 39.927、 'lng' => 116.415] ]; ?>
<?php echo '<script type="text/javascript"> '; foreach($ markers as $ marker){ $ lat = $ marker ['lat']; $ lng = $ marker ['lng']; echo "var point = new bmap.point($ lng、$ lat);"; echo "var marker = new bmap.marker(point);"; echo "map.addoverlay(marker);"; } エコー '</script> '; ?>
<script type="text/javascript"> function updateMarkers() { // 送信Ajax最新の注釈データを取得するリクエスト $.ajax({ url: 'get_markers.php', method: 'GET', dataType: 'json', success: function(data) { // 元のマークをクリアします map.clearOverlays(); // 最新のラベル付きデータを通過します,マップに追加します for (var i = 0; i < data.length; i++) { var point = new BMap.Point(data[i].lng, data[i].lat); var marker = new BMap.Marker(point); map.addOverlay(marker); } } }); } <p>// 時々注釈を更新する関数を呼び出してください<br> setInterval(updateMarkers, 5000);<br> </script><br>
関連タグ:
API