Maison > développement back-end > tutoriel php > Exemple d'implémentation de la fonction de positionnement d'un téléphone mobile en php

Exemple d'implémentation de la fonction de positionnement d'un téléphone mobile en php

小云云
Libérer: 2023-03-22 21:52:02
original
6788 Les gens l'ont consulté

Cet article partage principalement avec vous des exemples de php implémentant la fonction de positionnement du téléphone mobile. Il est principalement partagé avec vous sous forme de code. J'espère qu'il pourra aider tout le monde.

Récemment, j'ai travaillé sur la localisation des utilisateurs de téléphones mobiles et l'envoi de messages après analyse, la méthode finale est la suivante

mobile. fichier php

Lorsque l'utilisateur accède à la page sur un téléphone mobile, il soumet automatiquement le package caché du formulaire de page pour obtenir la latitude et la longitude du navigateur mobile et le publie sur le serveur

<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);
?>
Copier après la connexion

Recommandations associées :

Basées sur JavaScript Pour obtenir l'emplacement spécifique actuel (X province, X ville, X comté, numéro de rue

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal