php - 使用位置名称在谷歌地图中标记/标记位置

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

是否可以使用位置名称动态标记谷歌地图中的位置。 客户将通过 rss 提要向我们提供位置名称。我们将使用 php 脚本获取该位置(不用担心),然后想在谷歌地图中标记它们。

假设我们得到地址:Weston Town Recreation Department 20 Alphabet Ln, Weston, MA (781) 那么我们必须在 googel map 中标记它

我不太了解如何发布这个或标记这个并在网页上动态显示,因为我是这个谷歌地图的新手

请指导我解决这个问题..

我还想在将鼠标悬停在谷歌地图中的标记上时出现的弹出窗口中添加一些详细信息 - 请也提出解决方案

最佳答案

你会想 Geocode您的地址,然后使用 results[idx].geometry.location 设置标记。 (谷歌地图地理编码页面有 an example 可以帮助您入门。)


在此处添加 Google 代码以防它发生变化/不复存在。

var geocoder, map;
function initialize() {
  geocoder = new google.maps.Geocoder();
  var latlng = new google.maps.LatLng(-34.397, 150.644);
  var myOptions = {
    zoom: 8,
    center: latlng,
    mapTypeId: google.maps.MapTypeId.ROADMAP
  }
  map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
}

function codeAddress() {
  var address = document.getElementById("address").value;
  geocoder.geocode( { 'address': address}, function(results, status) {
    if (status == google.maps.GeocoderStatus.OK) {
      map.setCenter(results[0].geometry.location);
      var marker = new google.maps.Marker({
          map: map, 
          position: results[0].geometry.location
      });
    } else {
      alert("Geocode was not successful for the following reason: " + status);
    }
  });
}

<body onload="initialize()">
 <div id="map_canvas" style="width: 320px; height: 480px;"></div>
  <div>
    <input id="address" type="textbox" value="Sydney, NSW">
    <input type="button" value="Encode" onclick="codeAddress()">
  </div>
</body>

关于php - 使用位置名称在谷歌地图中标记/标记位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3969867/

相关文章:

php - 实时处理和更新的最佳方法是什么?

asp.net - 在必须显示25万条折线的Google Map应用程序上需要指导

android - fragment 未附加到 FragmentManager

javascript - 限制缩放谷歌地图

php - Laravel 4 从数据库中获取下拉表单的信息

PHPUnit:如何模拟对同一方法的多次调用

javascript - 谷歌地图 : Render marker above markerclusterer

javascript - 如何动态更新 AngularJS 谷歌地图?

php - 继承变量不起作用

ios - 谷歌地图 iOS SDK : Map not loading although it's enabled and the key is correct