如何使用JS和PHP在Google StreetView中检查LatLng是否有效
我正在尝试实现一个php服务,它将接受一个如何使用JS和PHP在Google StreetView中检查LatLng是否有效,php,javascript,google-maps-api-3,Php,Javascript,Google Maps Api 3,我正在尝试实现一个php服务,它将接受一个$\u-GET(“LAT”)和一个$\u-GET(“LNG”),并根据Google StreetView APIv3JavaScript验证它是否有效。 如果是,则返回OK或NOK 我意识到JS代码可以实现这一点: var latLng = new google.maps.LatLng(12.121221, 78.121212); streetViewService.getPanoramaByLocation(latLng, ST
$\u-GET(“LAT”)
和一个$\u-GET(“LNG”)
,并根据Google StreetView APIv3JavaScript验证它是否有效。
如果是,则返回OK或NOK
我意识到JS代码可以实现这一点:
var latLng = new google.maps.LatLng(12.121221, 78.121212);
streetViewService.getPanoramaByLocation(latLng, STREETVIEW_MAX_DISTANCE, function (streetViewPanoramaData, status) {
if (status === google.maps.StreetViewStatus.OK) {
//ok
} else {
//no ok
}
});
我不能把所有的东西都联系在一起,也就是说PHP和JS,这样就可以工作了
有人能帮我吗
谢谢
编辑1:
这是我到目前为止提出的代码,但它不起作用:
<?php
Header("content-type: application/javascript");
?>
<html>
<head> </head>
<body onload="checkValid()">
<script src="https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=true"></script>
<script language="text/javascript">
function checkValid() {
var streetViewService = new google.maps.StreetViewService();
var STREETVIEW_MAX_DISTANCE = 100;
var latLng = new google.maps.LatLng(<?php $_GET("LAT") ?>,<?php $_GET("LNG") ?>);
streetViewService.getPanoramaByLocation(latLng, STREETVIEW_MAX_DISTANCE, function (streetViewPanoramaData, status) {
if (status === google.maps.StreetViewStatus.OK) {
alert('ok');
} else {
alert('not');
}
});
}
</script>
</body>
</html>
函数checkValid(){
var streetViewService=新的google.maps.streetViewService();
var街景最大距离=100;
var latLng=新的google.maps.latLng(,);
streetViewService.getPanoramaByLocation(街景、街景最大距离、功能(街景全景数据、状态){
如果(状态===google.maps.StreetViewStatus.OK){
警报(“正常”);
}否则{
警惕(“不”);
}
});
}
如果要使用JS验证lat和lng,则需要将$\u get
参数输入JS。比如:
var LAT = '<?=isset($_GET['LAT']) ? $_GET['LAT'] : 91?>';
var LNG = '<?=isset($_GET['LNG']) ? $_GET['LNG'] : 181?>';
var latLng = new google.maps.LatLng(LAT, LNG);
streetViewService.getPanoramaByLocation(latLng, STREETVIEW_MAX_DISTANCE, function (streetViewPanoramaData, status) {
if (status === google.maps.StreetViewStatus.OK) {
//ok
} else {
//no ok
}
});
var LAT='';
var LNG=“”;
var latLng=新的google.maps.latLng(LAT,LNG);
streetViewService.getPanoramaByLocation(街景、街景最大距离、功能(街景全景数据、状态){
如果(状态===google.maps.StreetViewStatus.OK){
//嗯
}否则{
//不行
}
});
我使用了一个简单的三元语句,询问
GET
是否可用,如果可用,则将其添加到JS变量中,如果不可用,则添加一个超出Lat和Lng范围的值。这将导致Google Maps API自动失败。如果要使用JS验证lat和lng,则需要将$\u get
参数输入JS。比如:
var LAT = '<?=isset($_GET['LAT']) ? $_GET['LAT'] : 91?>';
var LNG = '<?=isset($_GET['LNG']) ? $_GET['LNG'] : 181?>';
var latLng = new google.maps.LatLng(LAT, LNG);
streetViewService.getPanoramaByLocation(latLng, STREETVIEW_MAX_DISTANCE, function (streetViewPanoramaData, status) {
if (status === google.maps.StreetViewStatus.OK) {
//ok
} else {
//no ok
}
});
var LAT='';
var LNG=“”;
var latLng=新的google.maps.latLng(LAT,LNG);
streetViewService.getPanoramaByLocation(街景、街景最大距离、功能(街景全景数据、状态){
如果(状态===google.maps.StreetViewStatus.OK){
//嗯
}否则{
//不行
}
});
我使用了一个简单的三元语句,询问
GET
是否可用,如果可用,则将其添加到JS变量中,如果不可用,则添加一个超出Lat和Lng范围的值。这将导致Google Maps API自动失败。由于javascript仅在浏览器中执行,而不是在服务器上执行,因此您无法创建php服务,除非您在服务器上运行javascript,但这非常复杂。由于javascript仅在浏览器中执行,而不是在服务器上执行,因此您无法创建php服务,除非你在服务器上运行javascript,但这很复杂。嘿,Samuel,谢谢你的代码。我还不能让它工作。。。我会把我所有的代码都加到这个问题上,也许你可以指出我做错了什么。谢谢塞缪尔,谢谢你的密码。我还不能让它工作。。。我会把我所有的代码都加到这个问题上,也许你可以指出我做错了什么。谢谢