Home  >  Article  >  Backend Development  >  php怎么实现手机定位功能

php怎么实现手机定位功能

PHPz
PHPzOriginal
2016-06-02 11:28:342377browse

php怎么实现手机定位功能

php怎么实现手机定位功能?

php实现手机定位功能的实例

最近在做通过定位手机用户,进行消息推送,经过分析最终做法如下

mobile.php文件

当用户当手机访问该页面时,通过实现页面表单隐藏封装自动提交获取手机浏览器经纬度并post给服务器

<html>
<meta charset="utf8">
<head>
<form name="form1" action="http://test.nwee.cc/ken/baidulocated.php" method="post">
<input type="text" name="lat" id="lat" style="display:none">
<input type="text" name="lng" id="lng" style="display:none">
</form>
<script type="text/javascript">
    var position_option = {
        enableHighAccuracy: true,
        maximumAge: Infinity,
        timeout: 100000
    };
    var lat;
    var lng;
    if(navigator.geolocation){
        navigator.geolocation.getCurrentPosition(getPositionSuccess, getPositionError, position_option);
    }else{
        alert(&#39;Geolocation is not supported by this browser.&#39;);
    }
    function getPositionSuccess(position) {
        lat = position.coords.latitude;
        lng = position.coords.longitude;
        //alert(&#39;您所在的位置: 纬度&#39; + lat + &#39;,经度&#39; + lng);
fillForm();
//填充表单
document.form1.submit();
//post数据到服务器
    }
    function getPositionError(error) {
        switch (error.code) {
            case error.TIMEOUT:
            alert(&#39;The request to get user location timed out.&#39;);break;
            case error.PERMISSION_DENIED:
            alert(&#39;User denied the request for Geolocation.&#39;);break;
            case error.POSITION_UNAVAILABLE:
            alert(&#39;Location information is unavailable.&#39;);break;
            default:
            alert(&#39;An unknown error occurred.&#39;);
        }
    }
    function fillForm(){
        document.getElementById(&#39;lat&#39;).value = lat;
        document.getElementById(&#39;lng&#39;).value = lng;
    }
</script>
</head>
</html>

located.php文件

通过百度定位api进行解析定位

<?php
header("Content-type:text/html; charset=utf8");
$url="http://api.map.baidu.com/geocoder/v2/?location=".$_POST["lat"].",".$_POST["lng"]."&ak=*****************************&coordtype=bd09ll&output=json";
$json = file_get_contents($url);
$arr = json_decode($json, true);
var_dump($arr);
?>

更多相关知识,请访问PHP中文网

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn