ホームページ  >  記事  >  バックエンド開発  >  PHPで携帯電話の位置情報を取得する方法

PHPで携帯電話の位置情報を取得する方法

(*-*)浩
(*-*)浩オリジナル
2019-09-27 13:59:545012ブラウズ

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

PHPで携帯電話の位置情報を取得する方法

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

mobile.php ファイル (推奨学習: 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);

?>

以上がPHPで携帯電話の位置情報を取得する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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