Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/281.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
动态谷歌地图/经纬度变量/php/java/var/basic_Java_Php_Api_Google Maps_Latitude Longitude - Fatal编程技术网

动态谷歌地图/经纬度变量/php/java/var/basic

动态谷歌地图/经纬度变量/php/java/var/basic,java,php,api,google-maps,latitude-longitude,Java,Php,Api,Google Maps,Latitude Longitude,问题: 嗨 我想嵌入一个动态谷歌地图在我的网站的IP地址。我使用IPlocation工具获得了横向/纵向数据。我还无法将IPlocation的lat/log数据连接到google map java代码。我不知道如何在load map函数中格式化/定义/放置纬度和经度。以下是我尝试过但尚未奏效的事情: 我试着把它转换成javascript代码 我还尝试手动输入$latitude和$longitude的值 我尝试直接在java代码中添加“ip2location_latitude()”和“ip2l

问题:


我想嵌入一个动态谷歌地图在我的网站的IP地址。我使用IPlocation工具获得了横向/纵向数据。我还无法将IPlocation的lat/log数据连接到google map java代码。我不知道如何在load map函数中格式化/定义/放置纬度和经度。以下是我尝试过但尚未奏效的事情:

  • 我试着把它转换成javascript代码
  • 我还尝试手动输入$latitude和$longitude的值
  • 我尝试直接在java代码中添加“ip2location_latitude()”和“ip2location_latitude()”
最后,我需要获得一个基于IP的位置历史记录,并将位置数据记录到数据库中

提前谢谢 以下是我的代码摘要:

<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script> <!-- Google map API v3 -->

<?php
$latitude = 'ip2location_latitude()'; //------------ IP latitude
$longitude = 'ip2location_longitude()'; //------------ IP latitude ip2location_longitude() 
?>

<!-- Start loading canvas google map -->

<script type="text/javascript">
function loadmap () { 
var latlng = new google.maps.LatLng($latitude,$longitude);
var option = {
zoom: 8,
center: latlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
}
map = new google.maps.Map(document.getElementById("map_canvas"), option);
createMarker(latitude,logitude, 'lol');
downloadUrl("airport.xml", function(data) {
var xml = xmlParse(data);
var markers = xml.documentElement.getElementsByTagName("marker");
document.getElementById("test").innerHTML = markers.length;
for (var i = 0; i < markers.length; i++) {
var info = markers[i].getAttribute("info");
var lat = parseFloat(markers[i].getAttribute("lat"));
var lon = parseFloat(markers[i].getAttribute("lng"));

createMarker(lat, lon, info);
bindInfoWindow(marker, map, infoWindow, html);
}
});
}
function createMarker(lat, lon, info){
var myLatlng = new google.maps.LatLng($latitude,$longitude);
var marker = new google.maps.Marker({
position: myLatlng,
map: map,
title:"My location",
icon: "http://google-maps-icons.googlecode.com/files/airport.png"
});
}
</script>
<!-- End Geting map via latitude and longitude-->

<!-- Start calling load map function to load the map -->
<body onload="loadmap ()">
<div id="map_canvas" style="width:400px; height:300px"></div>
<div id="test" style="width:50%; height:50%"></div>
<!-- End calling load map function to load the map -->

函数loadmap(){
var latlng=new google.maps.latlng($latitude,$longitude);
var选项={
缩放:8,
中心:拉特林,
mapTypeId:google.maps.mapTypeId.ROADMAP
}
map=new google.maps.map(document.getElementById(“map_canvas”)选项);
createMarker(纬度、逻辑度、“lol”);
下载URL(“airport.xml”,函数(数据){
var xml=xmlParse(数据);
var markers=xml.documentElement.getElementsByTagName(“标记”);
document.getElementById(“test”).innerHTML=markers.length;
对于(var i=0;i
您忘记使用echo/print打印PHP变量的值

在createMarker中,您应该引用提供的参数(lat、lon),而不是$latitude/$longitude

固定版本:

<body onload="loadmap ()">
<script  src="http://maps.google.com/maps/api/js?sensor=false">
   </script>
<script src="http://www.iplocationtools.com/iplocationtools.js?key=YOURKEY">
   </script>
<?php
$latitude = 'ip2location_latitude()'; //------------ IP latitude
$longitude = 'ip2location_longitude()'; //------------ IP latitude ip2location_longitude() 
?>
<script type="text/javascript">
function loadmap () { 
  var latlng = new google.maps.LatLng(<?php echo $latitude;?>,<?php echo $longitude;?>);
  var option = {
                zoom: 8,
                center: latlng,
                mapTypeId: google.maps.MapTypeId.ROADMAP
               };
  map = new google.maps.Map(document.getElementById("map_canvas"), option);
  createMarker(<?php echo $latitude;?>,<?php echo $longitude;?>, 'lol');

}
function createMarker(lat, lon, info){
var myLatlng = new google.maps.LatLng(lat,lon);
var marker = new google.maps.Marker({
position: myLatlng,
map: map,
title:"My location",
icon: "http://google-maps-icons.googlecode.com/files/airport.png"
});
}
</script>
<div id="map_canvas" style="width:400px; height:300px"></div>
<div id="test" style="width:50%; height:50%"></div>
</body> 

函数loadmap(){
var latlng=新的google.maps.latlng(,);
var选项={
缩放:8,
中心:拉特林,
mapTypeId:google.maps.mapTypeId.ROADMAP
};
map=new google.maps.map(document.getElementById(“map_canvas”)选项);
createMarker(,'lol');
}
函数createMarker(纬度、经度、信息){
var mylatng=new google.maps.LatLng(lat,lon);
var marker=new google.maps.marker({
职位:myLatlng,
地图:地图,
标题:“我的位置”,
图标:“http://google-maps-icons.googlecode.com/files/airport.png"
});
}

但是,这项服务不是很准确,对我来说,它显示的位置离我现在的位置400公里。我建议使用浏览器实现的地理定位。

“createMarker(latitude,logitude,'lol');”-什么是latitude和logitude(注意:检查第二个参数的拼写错误),它们在哪里定义?谢谢,我想我应该定义它,我使用IP2location获得它们。IP2位置纬度()。我试图使用定义它们,所以它们不应该被引用为createMarker($latitude,$longitude,'lol);Molle医生,谢谢,我应该把echo/print放在哪里?在第一个php括号内?是否采用这种格式?:echo$纬度和echo$经度?