使用mysql数据库中的值在谷歌地图上放置标记

时间:2014-05-10 16:05:44

标签: javascript php mysql

我试图从mysql数据库中提取值并用于在地图上绘制标记,但它似乎不起作用,我已经测试了数据库连接及其工作正常但我不知道问题是什么

<html>

 <?PHP
    include("config.php");
       $sql="SELECT * FROM lat long";
        $rs = mysqli_query($con,$sql) or die(mysql_error()); 
        $array=mysqli_fetch_array($rs);


        $Lat=$array['lat'];
        $Lng=$array['long'];


?>

  <head>
    <meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
    <style type="text/css">
      html { height: 100% }
      body { height: 100%; margin: 0; padding: 0 }
      #map_canvas { height: 100% }

      #select_route {width:20%;height:200px;}
    </style>
    <script type="text/javascript"
      src="http://maps.googleapis.com/maps/api/js?sensor=false">
    </script>

 <script type="text/javascript">





    var map = "";
      function initialize() {

        var mapOptions = {
          center: new google.maps.LatLng(30, 31),
          zoom: 5,
          mapTypeId: google.maps.MapTypeId.ROADMAP
        };
            map = new google.maps.Map(document.getElementById("map_canvas"),
            mapOptions);
      }

      function addMarker() {

var LatLong= new google.maps.LatLng(<?php echo lat ?> ,<?php echo lng ?>); 

//问题在这里传递lat和long我想是

            marker = new google.maps.Marker({
              position:LatLong,

              });   
                marker.setMap(map);

               var infowindow = new google.maps.InfoWindow({
                content: "<p style='color:blue'>UserInfo</p>" + '<button type="button">Navigate</button>' + '<IMG BORDER="0" ALIGN="Left" SRC="testpic.png">' ,
                position: new google.maps.LatLng(30, 31), 
            });

            google.maps.event.addListener(marker, 'click', function() {
            infowindow.open(map,marker);
            });

        };




        </script>
    <div id ="welcome" style="color:#0000FF">
  <h3>Welcome to GoogleMaps  </h3>


</div>

  </head>
  <body onload="initialize();addMarker();">
    <div id="map_canvas" style="width:60%; height:80%"></div>

1 个答案:

答案 0 :(得分:0)

我看到的第一件事是您在以下行中的php变量之前缺少$符号:

var LatLong= new google.maps.LatLng(<?php echo lat ?> ,<?php echo lng ?>); 

此外,变量名称不正确。您将变量定义为$ Lng和$ Lat以大写字母开头,但在上面的代码中您使用的是小写。

所以将该行更改为:

var LatLong= new google.maps.LatLng(<?php echo $Lat ?> ,<?php echo $Lng ?>); 

除此之外,您可能需要调整查询。如果它是这样的话会更有意义:

“SELECT * FROM table_name”其中table_name是表的名称。

最后,如果它仍然无效,请在浏览器的控制台和php错误日志中发布javascript错误,以便我更容易看到错误。

相关问题