从地址变量到谷歌地图[关闭]

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从地址变量到谷歌地图[关闭]相关的知识,希望对你有一定的参考价值。

当人们在我的网站上注册时,他们会输入他们的街道名称。我想插入一个可以生成其位置的地图。我有php变量但是如何将它们插入到Google javascript代码中,这可以在地图上生成该特定位置。我曾尝试阅读一些谷歌地图开发人员,并制作了我自己的API密钥,但我不知道如何从这一点开始。

$sql = "SELECT * FROM submitted WHERE id ='$id'";
$sql_run = $db->query($sql);
$row = mysqli_fetch_assoc($sql_run);

$city= $row["city"];
$street= $row["streetname"];
答案

要在地图上绘制地址,请执行以下步骤:

第1步:包含谷歌地图API脚本文件

<script src="https://maps.googleapis.com/maps/api/js?key=YOUR_KEY"></script>

第2步:创建一个地图元素

<div id="map" style="height: 550px; width: 100%;"></div>

第3步:代码声明地图元素和地址地理编码以绘制标记

<script type="text/javascript">
// ====== Create map objects ======
var latlng = new google.maps.LatLng(-34.397, 150.644);
var mapOptions = {
        zoom: 10,
        center: latlng,
        mapTypeId: google.maps.MapTypeId.ROADMAP
    }
var geo = new google.maps.Geocoder(); 
var map = new google.maps.Map(document.getElementById("map"), mapOptions);
var bounds = new google.maps.LatLngBounds();

// ====== Geocoding ======
function getAddress(search) {
    geo.geocode({address:search}, function (results,status)
      { 
        // If that was successful
        if (status == google.maps.GeocoderStatus.OK) {
          // Lets assume that the first marker is the one we want
          var p = results[0].geometry.location;
          var lat=p.lat();
          var lng=p.lng();
          // Output the data
          createMarker(search,lat,lng);
        }
        // ====== Decode the error status ======
        else {
            alert('Something went wrong. Please Try again.');
        }
      }
    );
}


// ======= Function to create a marker
function createMarker(location,lat,lng) {
    var marker = new google.maps.Marker({
        position: new google.maps.LatLng(lat,lng), 
        map: map
    });

    google.maps.event.addListener(marker, 'click', function() {
        alert("Your Location : "+location);
     });

     bounds.extend(marker.position); 
}
</script>

步骤4:从数据库获取地址并使用给定的地址变量在脚本中调用地理编码函数getAddress('address from db')

<?php 
$city = $row["city"];
$street = $row["streetname"];
?>
<script>
getAddress('<?php echo $street.','.$city; ?>');
</script>

我希望你能轻松理解这段代码。如果有关于此代码的问题,请告诉我。

以上是关于从地址变量到谷歌地图[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

php 地址到谷歌地图链接

将远程 api json 数据显示到谷歌地图中

如何激活点击以路由到谷歌地图

将 CSS 样式标记添加到谷歌地图

将数据库中的多个纬度/经度点加载到谷歌地图标记中的好方法?

将 Kml 图层添加到谷歌地图