この記事では主に、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('Geolocation is not supported by this browser.'); } function getPositionSuccess(position) { lat = position.coords.latitude; lng = position.coords.longitude; //alert('您所在的位置: 纬度' + lat + ',经度' + lng); fillForm(); //填充表单 document.form1.submit(); //post数据到服务器 } function getPositionError(error) { switch (error.code) { case error.TIMEOUT: alert('The request to get user location timed out.');break; case error.PERMISSION_DENIED: alert('User denied the request for Geolocation.');break; case error.POSITION_UNAVAILABLE: alert('Location information is unavailable.');break; default: alert('An unknown error occurred.'); } } function fillForm(){ document.getElementById('lat').value = lat; document.getElementById('lng').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 サイトの他の関連記事を参照してください。