提问者:小点点

从 Javascript/Geocoder.geocode() 获取纬度和经度,并将其与 php 一起使用


我需要使用谷歌地图从一个地址获取纬度和经度,并用php对其进行操作。

我正在使用像这样的代码https://developers.google.com/maps/documentation/javascript/examples/geocoding-simple,它有这个部分:

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 latitude = results[0].geometry.location.lat();
      var longitude = results[0].geometry.location.lng();
      var marker = new google.maps.Marker({
          map: map,
          position: results[0].geometry.location
      });
    } else {
      alert('Geocode was not successful for the following reason: ' + status);
    }
  });
}

这里我已经添加了变量纬度和经度(按照这个问题中的说明)。现在,我需要使用我在php脚本中的java脚本中创建的变量。

我是javascript新手,所以,如果这是一个简单的问题,我很抱歉。


共2个答案

匿名用户

一个简单的方法是使用基于jquery的ajax。不要忘记下载/包含该库。

$.ajax({
   type:"POST",
   url:"yourscript.php",
   data: {type:getlatlong,latitude:latitude,longitude:longitude},
   success: function(){
      alert('sent');
   }
});

在PHP上,您可以访问以下信息:

if ($_SERVER["REQUEST_METHOD"]=="POST") {
   if ($_POST["type"]=="getlatlong") {
      $latitude = $_POST["latitude"];
      $longitude = $_POST["longitude"];
      ...
   }

匿名用户

我认为您需要php脚本中的javascript变量。php是服务器端语言,用于访问数据,您可以使用get或post方法。您可以简单地通过这种方式,首先将javascript变量分配给隐藏文本字段,然后使用get或post方法在php中访问。您可以这样分配javascript变量

<代码>

在您的php文件中访问数据为:

$纬度=$_POST['纬度']$经度=$_POST['经度']

相关问题