ホームページ  >  記事  >  バックエンド開発  >  携帯電話の測位機能をphpで実装した例

携帯電話の測位機能をphpで実装した例

小云云
小云云オリジナル
2018-03-31 15:23:256719ブラウズ

この記事では主に、PHP を使用して携帯電話の測位機能を実装する例をコードの形式で紹介します。

最近、私はメッセージをプッシュする携帯電話ユーザーを見つけることに取り組んでいます。分析後の最終的な方法は次のとおりです

mobile.phpファイル

ユーザーが携帯電話でページにアクセスすると、ブラウザーの緯度と経度の非表示のカプセル化を実装して携帯電話を自動的に送信および取得し、サーバーに投稿します

<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);
?>

関連推奨事項:

携帯電話の位置に基づいて現在の特定の位置を取得します。 (X 州 X 市 X 郡 X 番地 X)_JavaScript スキル

以上が携帯電話の測位機能をphpで実装した例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。