InvalidValueError:setCenter:不是LatLng或LatLngLiteral:在属性lat中:不是数字

时间:2015-11-08 17:11:14

标签: php google-maps

我想从数据库中选择我的地理数据。我宣布数据类型为十进制(12,8)。我想从数据库中选择这个值,因为几次点击会显示几个maps.lat和lng值会动态变化

但它显示了

  

InvalidValueError:setCenter:不是LatLng或LatLngLiteral:在属性lat中:不是数字。   [



<?php
if ($result!=NULL) {
	foreach ($result as $value) {
		$latitude=$value->latitude;
		$longitude=$value->longitude;
	?>
<script type="text/javascript">
  function intimap(){
var mapOptions={
 center: {lat:<?php echo json_encode($latitude);?>,lng:<?php echo json_encode($longitude);?>},
 zoom: 12,
 mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map=new google.maps.Map(document.getElementById(<?php echo json_encode($value->map_name);?>),mapOptions);
var marker=new google.maps.Marker({
  position:{lat:<?php echo json_encode($latitude);?>,lng:<?php echo json_encode($longitude);?>},
  map: map,
  title:<?php echo json_encode($value->place_title);?>,
  animation:google.maps.Animation.BOUNCE
});
}
</script>
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:0)

我认为您的问题是您在设置标记变量时使用json_encode输出值。只需在没有json_encode的情况下回显那里的值,那就应该修复它。