标记不会出现在Google地图上

时间:2015-11-08 01:25:54

标签: javascript php ajax google-maps google-maps-api-3

我去了网站,看看在提出这个问题之前是否有任何建议可以尝试。也有同学问过。他们尝试了代码并且它适用于它们但是由于某种原因它不适用于我的。我的标记不会出于某种原因。

手动它可以工作但是从数据库中却没有。使用了DB2数据库。

我有一个Google Maps API密钥并正在使用它。

这是我用于显示的代码:

<!DOCTYPE html> 
<html lang="en">
    <head>
       <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
        <script async defer
                        src="https://maps.googleapis.com/maps/api/js?key=mykey&libraries=places&callback=init">
                </script>

        <script type="text/javascript">
        var map;
        var marker;
//function 1         
        function init() {
                var center = new google.maps.LatLng(37.6500, -121.9100); //center
                var infowindow = new google.maps.InfoWindow();         
                var mapOptions = {
                zoom: 9,
                center: center,
                }
                 map = new google.maps.Map(document.getElementById("map"), mapOptions);
                 $.post("schooljson.php",
                    {lat: "latitude", 
                    lng: "longitude",
                    loc: "location"},  
                    function(data){
                         loadSchools(data);
                 }, "json");

 // function 2
      function loadSchools(data)
      {
            for(var j in data){                                                    
                marker = new google.maps.Marker({
                    position: {
                        lng: data[j].lat, // sometimes these are reversed
                        lat: data[j].longitude,
                        map: map
                    }
                });
            marker.setMap(map);  
               // google.maps.event.addDomListener(marker, 'load', init);
                 /*ADD MARKER LISTENERS HERE*/
            }    
      }
 }

        </script>
    </head>
    <body>
        <div id="map" style="width: 70%; height: 500px;"></div>        
    </body>
</html>

这是我的PHP:

<?php
//phpinfo();
//exit;

require 'connect.php';

try{
    $conn = db2_connect($database, $user, $pass);
}
catch( Exception $e ){
    echo "Exception: ". $e->getMessage();
}

if( $conn ){
    $sql ="select name1, name2, street, city, zip, county, db2gse.ST_X(loc), db2gse.ST_Y(loc), loc
from school";
    $stmt = db2_prepare($conn, $sql);

    if( $stmt)
    {
        $result = db2_execute($stmt);
    }
    else
    {
        echo "No results";
    }
    while($row = db2_fetch_array($stmt))
    {
        $json[] = array(
            'name1' => $row[0],
            'name2' => $row[1],
            'street' => $row[2],
            'city' => $row[3],
            'zip' => $row[4],
            'county' => $row[5],
            'loc' => $row[8],
            'lat' => $row[6],
            'longitude' => $row[7]);
    }

    header('Content-type: application/json');
    $jsonstring = json_encode($json);
    echo $jsonstring;   

    db2_close($conn);
}
else{
    echo db2_conn_error()."<br>";
    echo db2_conn_errormsg()."<br>";
    echo "Connection failed.<br>";
}
?>

1 个答案:

答案 0 :(得分:1)

看起来我的谷歌浏览器上安装了一些扩展程序,我不知道并卸载它,所以它现在已修复!