如何使用JS和PHP在Google StreetView中检查LatLng是否有效

如何使用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

我正在尝试实现一个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, 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,谢谢你的代码。我还不能让它工作。。。我会把我所有的代码都加到这个问题上,也许你可以指出我做错了什么。谢谢塞缪尔,谢谢你的密码。我还不能让它工作。。。我会把我所有的代码都加到这个问题上,也许你可以指出我做错了什么。谢谢