将地理位置保存在 php 变量中

Posted

技术标签:

【中文标题】将地理位置保存在 php 变量中【英文标题】:Save Geolocation in php variables 【发布时间】:2015-06-03 09:54:20 【问题描述】:

我想将纬度和经度保存到 php 变量中 例如我想要这样的输出:

<?php echo $latitude ?>

这是捕获位置的脚本(来自 w3schools)

<button onclick="getLocation()">Try It</button>

<p id="demo"></p>

<script>
var x = document.getElementById("demo");

function getLocation() 
    if (navigator.geolocation) 
        navigator.geolocation.getCurrentPosition(showPosition);
     else  
        x.innerhtml = "Geolocation is not supported by this browser.";
    


function showPosition(position) 
    x.innerHTML = "Latitude: " + position.coords.latitude + 
    "<br>Longitude: " + position.coords.longitude;  

</script>

但我真的不知道如何保存这个功能中的坐标:/

【问题讨论】:

地理代码在 javascript 中,因此您将无法在 PHP 中访问任何这些变量。 【参考方案1】:

在服务器中 PHP 执行完成后,JavaScript 在浏览器中执行,因此您将永远无法在 PHP 中使用 JavaScript 变量。

但是,如果您打算将地理位置保存在某处,则可以在地理编码器执行后进行 ajax 调用,以通过用户 ID 或您正在捕获的任何参数将位置纬度和经度保存到数据库中。

function showPosition(position) 
    x.innerHTML = "Latitude: " + position.coords.latitude + 
    "<br>Longitude: " + position.coords.longitude; 
    $.ajax(
        // you ajax code here
    );

【讨论】:

谢谢 :) 我会试试的 欢迎使用***,如果您找到解决问题的答案,您可以通过绿色复选标记接受答案

以上是关于将地理位置保存在 php 变量中的主要内容,如果未能解决你的问题,请参考以下文章

将当前地理位置保存到变量

将 VStack 的位置保存在 @State 私有变量中

如何将我的位置保存在全局变量中

无法将数据从地理编码器保存到全局变量 [重复]

Android GPS使用php在Mysql中保存当前位置

如何将变量存储在文件中,以便它们将它们的值保存在我可以在程序中打印出来的位置? [复制]