Google Map包含foreach和mysql的位置功能

时间:2017-05-09 06:19:33

标签: php mysql google-maps google-maps-api-3

我正在使用包含位置功能的谷歌地图api ....我正在从数据库检索纬度经度我正在使用foreach循环来获得结果。如果标记在多边形内它将停止foreach但问题它没有显示任何结果。结果出来是从最后一行查询我怎么能​​修复它。它只显示我从数据库的最后一行.Below是我的代码

<?php
if(!empty($zone)){
foreach($zone as $findzone)
{
 $exploded_data=explode('),',$findzone['zone_latlog']);
  $count=count($exploded_data);
   ?>
   <script>
    var latitude = document.getElementById('latitude').value;
    var longitude = document.getElementById('longitude').value;
    var map;
    var coord1 = new google.maps.LatLng(latitude, longitude);
 function initialize() {
              var map = new google.maps.Map(
                document.getElementById("map_canvas"), {
                  center: new google.maps.LatLng(33.714760, 73.083160),
                  zoom: 8,
                  mapTypeId: google.maps.MapTypeId.ROADMAP
                });
              var bermudaTriangle = new google.maps.Polygon({
                map: map,
                paths: [
                <?php 
                for($i=0;$i<$count;$i++){
                    echo "new google.maps.LatLng".$exploded_data[$i]."),";
                }
                ?>
                ]
              });
              var bounds = new google.maps.LatLngBounds();
              for (var i=0; i<bermudaTriangle.getPath().getLength(); i++) {
                 bounds.extend(bermudaTriangle.getPath().getAt(i));
              }
              bounds.extend(coord1);
              var marker1 = new google.maps.Marker({
                map: map,
                position: coord1
              });
              map.setCenter(bounds.getCenter());
              map.setZoom(11);
              checkInPolygon(marker1, bermudaTriangle);
            }
            google.maps.event.addDomListener(window, "load", initialize);

            function checkInPolygon(marker, polygon) {
              var infowindow = new google.maps.InfoWindow();
              var html = "";
              if (google.maps.geometry.poly.containsLocation(marker.getPosition(), polygon)) {
                html = "inside polygon";

              } else {
                html = "outside polygon";
              }
              infowindow.setContent(html);
              infowindow.open(map, marker);

            }


                </script>
            <?php 
            }}?>    

如何解决仅向我显示具有纬度经度标记

的多边形的问题

0 个答案:

没有答案