首頁 >後端開發 >php教程 >php實現手機定位功能的實例

php實現手機定位功能的實例

小云云
小云云原創
2018-03-31 15:23:256751瀏覽

本文主要和大家分享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);
?>

相關推薦:

基於JavaScript實作根據手機定位取得目前具體位置(X省X市X縣X街道X號)_javascript技巧

以上是php實現手機定位功能的實例的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn