【发布时间】:2019-10-22 01:48:46
【问题描述】:
我正在使用自动填写表格来查找城市名称的“lat”和“lng”,而且效果很好。我在 div id="lat" 和 div id="lng" 中得到了正确的值,但我想在 php 变量中使用这些值作为 $latitude="lat" 和 $longitude="lng" 以在 php 脚本中使用它们需要 $latitude 和 $longitude 吗? 我一直在尝试这里介绍的许多解决方案,但我的知识太短,无法使其发挥作用。 脚本是:
<script src="https://maps.googleapis.com/maps/api/js?v=3.exp&key=MY_KEY&libraries=places">
</script>
<script>
function initialize() {
var address = (document.getElementById('city-input'));
var autocomplete = new google.maps.places.Autocomplete(address);
autocomplete.setTypes(['geocode']);
google.maps.event.addListener(autocomplete, 'place_changed', function()
{
var place = autocomplete.getPlace();
if (!place.geometry) {
return;
}
var address = '';
if (place.address_components) {
address = [
(place.address_components[1] && place.address_components[1].short_name || ''),
(place.address_components[2] && place.address_components[2].short_name || '')
].join(' ');
}
document.getElementById('lat').innerHTML = place.geometry.location.lat();
document.getElementById('lng').innerHTML = place.geometry.location.lng();
});
}
google.maps.event.addDomListener(window, 'load', initialize);
</script>
<input id="city-input" class="controls" type="text"
placeholder="Enter a location">
<div id="lat"></div>
<div id="lng"></div>
对于 php 部分,我正在尝试这个,但没有任何结果
<?php
$latitude = (isset($_GET['lat']))?$_GET['lat']:'';
$longitude = (isset($_GET['lng']))?$_GET['lng']:'';
echo $latitude;
echo $longitude;
?>
有什么方法可以做我想做的事吗? (使用从 googleapis 正确获取的值获取 $latitude 和 $longitude?) 非常感谢您的宝贵帮助:-)
【问题讨论】:
-
你的意思是,当你回传到服务器时,你没有得到 lat 和 long 的值?看起来像城市输入?如果是这样,您可以使用类型为 hidden 的输入来保存 lat 和 long 的值并在下面为其设置值: document.getElementById('long').innerHTML = place.geometry.location.lng();
标签: php