Maison > développement back-end > Problème PHP > Comment obtenir la localisation d'un téléphone portable en php

Comment obtenir la localisation d'un téléphone portable en php

(*-*)浩
Libérer: 2023-02-25 09:48:01
original
5159 Les gens l'ont consulté

Exemple de php implémentant la fonction de positionnement de téléphone mobile

Comment obtenir la localisation d'un téléphone portable en php

Récemment, j'ai travaillé sur la localisation des utilisateurs de téléphones mobiles pour envoyer des messages, et après analyse, l'approche finale Comme suit

fichier mobile.php (apprentissage recommandé : Programmation PHP de l'entrée à la maîtrise)

Lorsque l'utilisateur accède à cette page sur un téléphone mobile Lorsque le formulaire de page est masqué et encapsulé, il est automatiquement soumis pour obtenir la longitude et la latitude du navigateur mobile et le publier 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

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:
php
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
Derniers numéros
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal