HTML5 地理位置,点击时将 lat/long 传递给 PHP 变量
HTML5 geolocation, pass lat/long to PHP variable on click
是否有可能在用户单击按钮时使用 HTML5 地理定位获取用户的纬度/经度,然后重定向到一个新页面,其中值将传递给 PHP 变量?
因此,如果用户在 index.php
上,其中包含 HTML5 地理定位代码,并且他们单击此按钮;
<span class="button get-my-location">My Location</span>
然后他们将被重定向到 weather.php
,在那里他们的 lat/long 将存储在 2 PHP 变量 $lat
和 $long
这可能吗?我假设它需要基于 AJAX?不幸的是 AJAX 不是我的强项。
任何帮助都会很棒
获取用户的经纬度很容易,您需要将其分配给表单中的隐藏字段并提交到php页面url或以GET或[=发送21=] 来自 Javascript
这是如何在获得用户位置后直接重定向用户的示例:
<!DOCTYPE html>
<html>
<body>
<p>Click the button to get your coordinates.</p>
<button onclick="getLocation()">Try It</button>
<p id="demo"></p>
<script>
var x = document.getElementById("demo");
function getLocation() {
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(redirectToPosition);
} else {
x.innerHTML = "Geolocation is not supported by this browser.";
}
}
function redirectToPosition(position) {
window.location='weather.php.php?lat='+position.coords.latitude+'&long='+position.coords.longitude;
}
</script>
</body>
</html>
PHP 代码:
<?php
$lat=(isset($_GET['lat']))?$_GET['lat']:'';
$long=(isset($_GET['long']))?$_GET['long']:'';
//do whatever you want
?>
getPosition.php 这是您的退出页面名称
<!DOCTYPE html>
<html>
<body ><!--onload="getLocation()" use it for on load page-->
<button onclick="getLocation()">Try It</button>
<script>
function getLocation() {
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(redirectToPosition);
} else {
x.innerHTML = "Geolocation is not supported by this browser.";
}
}
function redirectToPosition(position) {
window.location='getPosition.php?lat='+position.coords.latitude+'&long='+position.coords.longitude;
}
</script>
<?php
echo $lat=(isset($_GET['lat']))?$_GET['lat']:'';
echo $long=(isset($_GET['long']))?$_GET['long']:'';
//do whatever you want
?>
</body>
</html>
是否有可能在用户单击按钮时使用 HTML5 地理定位获取用户的纬度/经度,然后重定向到一个新页面,其中值将传递给 PHP 变量?
因此,如果用户在 index.php
上,其中包含 HTML5 地理定位代码,并且他们单击此按钮;
<span class="button get-my-location">My Location</span>
然后他们将被重定向到 weather.php
,在那里他们的 lat/long 将存储在 2 PHP 变量 $lat
和 $long
这可能吗?我假设它需要基于 AJAX?不幸的是 AJAX 不是我的强项。
任何帮助都会很棒
获取用户的经纬度很容易,您需要将其分配给表单中的隐藏字段并提交到php页面url或以GET或[=发送21=] 来自 Javascript
这是如何在获得用户位置后直接重定向用户的示例:
<!DOCTYPE html>
<html>
<body>
<p>Click the button to get your coordinates.</p>
<button onclick="getLocation()">Try It</button>
<p id="demo"></p>
<script>
var x = document.getElementById("demo");
function getLocation() {
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(redirectToPosition);
} else {
x.innerHTML = "Geolocation is not supported by this browser.";
}
}
function redirectToPosition(position) {
window.location='weather.php.php?lat='+position.coords.latitude+'&long='+position.coords.longitude;
}
</script>
</body>
</html>
PHP 代码:
<?php
$lat=(isset($_GET['lat']))?$_GET['lat']:'';
$long=(isset($_GET['long']))?$_GET['long']:'';
//do whatever you want
?>
getPosition.php 这是您的退出页面名称
<!DOCTYPE html>
<html>
<body ><!--onload="getLocation()" use it for on load page-->
<button onclick="getLocation()">Try It</button>
<script>
function getLocation() {
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(redirectToPosition);
} else {
x.innerHTML = "Geolocation is not supported by this browser.";
}
}
function redirectToPosition(position) {
window.location='getPosition.php?lat='+position.coords.latitude+'&long='+position.coords.longitude;
}
</script>
<?php
echo $lat=(isset($_GET['lat']))?$_GET['lat']:'';
echo $long=(isset($_GET['long']))?$_GET['long']:'';
//do whatever you want
?>
</body>
</html>