【发布时间】:2018-12-26 09:39:07
【问题描述】:
我在我的数据库中将 lat 放在第 [2] 行上,并将 lng 放在第 [3] 行上 当我运行下面的代码时,谷歌地图是不可见的。 但是,当我更改变量时 纬度 = 25.3444 经度 = 131.0369 它有效
我想知道下面的代码有什么问题。
<?php
while($row = mysqli_fetch_array($result)){
if($row[0] == $num){
$lat = $row[2];
$lng = $row[3];
}
}
?>
<script>
latitude = '<?= $lat ?>';
longitude = '<?= $lng ?>';
function initMap() {
var uluru = {lat: latitude, lng: longtitude};
var map = new google.maps.Map(
document.getElementById('map'), {zoom: 7, center: uluru});
var marker = new google.maps.Marker({position: uluru, map: map});
}
</script>
【问题讨论】:
-
在while循环之前定义
$lat和$lng -
您在 javascript 控制台中遇到什么错误?我得到
Uncaught (in promise) ReferenceError: longtitude is not defined和发布的代码(因为你有一个错字,longtitude应该是longitude)。如果我修复它,我会收到两个错误:InvalidValueError: setCenter: not a LatLng or LatLngLiteral: in property lat: not a number和InvalidValueError: setPosition: not a LatLng or LatLngLiteral: in property lat: not a number,因为它们是字符串,而不是数字。
标签: javascript php google-maps