谷歌地图方向使用来自mysql的数据

时间:2016-05-30 00:06:04

标签: php mysql google-maps directions

如何在谷歌地图上制定方向?我在谷歌地图上非常新。我已经尝试过谷歌开发人员的教程,但它在制作路线时使用了“地方库”。但我的问题是我有两点,例如A点和B点。点A和B的纬度和经度存储在mysql中。我如何从2点(点A和B)指出在mysql上存储长度和长度的方向? 感谢。

1 个答案:

答案 0 :(得分:0)

链接教程不使用places-library。

当你想使用fix latitude&经度从数据库中获取它们,根据值创建google.maps.LatLng(或LatLngLiterals)并将其用作原点和目的地。

示例(假设您创建了4个PHP变量$point_a_lat$point_a_lng$point_b_lat$point_b_lng



function initMap() {
  var directionsService = new google.maps.DirectionsService;
      map = new google.maps.Map(document.getElementById('map'), {
        zoom: 7,
        center: {lat: 41.85, lng: -87.65}
      }),
      directionsDisplay = new google.maps.DirectionsRenderer({map:map}),
      displayRoute=function(origin,destination){
          directionsService.route({
            origin: origin,
            destination: destination,
            travelMode: google.maps.TravelMode.DRIVING
            }, function(response, status) {
                if (status === google.maps.DirectionsStatus.OK) {
                  directionsDisplay.setDirections(response);
                } else {
                  alert('Directions request failed due to ' + status);
                }
               });
      };
      
      displayRoute(
        { 
          //lat:<?php echo $point_a_lat;?>,
          //lng:<?php echo $point_a_lng;?>,
          lat:52.52, 
          lng:13.40
        },
        { //lat:<?php echo $point_b_lat;?>,
          //lng:<?php echo $point_b_lng;?>,
          lat: 48.85, 
          lng: 2.35
        }
      );
}
&#13;
html, body {
        height: 100%;
        margin: 0;
        padding: 0;
      }
      #map {
        height: 100%;
      }
&#13;
<div id="map"></div>
<script src="https://maps.googleapis.com/maps/api/js?v=3&callback=initMap"
        async defer></script>
&#13;
&#13;
&#13;