当脚本和php代码位于index.php中时,如何从javascript到php变量获取值?
我在index.php中的代码是当脚本和php代码位于index.php中时,如何从javascript到php变量获取值?,javascript,php,wordpress,Javascript,Php,Wordpress,我在index.php中的代码是 <script type="text/javascript"> window.onload=function(){ function callback(position) { latitude = position.coords.latitude; longitude = position.coords.longitude; alert(latitude)
<script type="text/javascript">
window.onload=function(){
function callback(position) {
latitude = position.coords.latitude;
longitude = position.coords.longitude;
alert(latitude);
alert(longitude);
}
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(callback);
}
}
</script>
window.onload=function(){
函数回调(位置){
纬度=位置坐标纬度;
经度=position.coords.longitude;
警报(纬度);
警报(经度);
}
if(导航器.地理位置){
navigator.geolocation.getCurrentPosition(回调);
}
}
我需要在index.php中显示纬度和经度的值
<?php echo $lat; ?>,
<?php echo $long; ?> how can i get value here?
,
我如何在这里获得价值?
首先,Javascript是基于客户端的语言,除非刷新页面或使用AJAX(异步Javascript和Xml),否则无法将其发送到服务器
AJAX仅使用以下组合:
- 浏览器内置的XMLHttpRequest对象(用于从web服务器请求数据)
- JavaScript和HTML DOM(用于显示或使用数据)*
function sendData(lat, lon) {
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
alert("Sent successfuly");
}
};
xhttp.open("GET", "getGeolocation.php?latitude=" + lat + "&longitude=" + lon , true);
xhttp.send();
}
这样,您将通过函数传递纬度和经度,然后将其值发送到getGeolocation.php中的控制器
您可以像这样获取数据
$lat = $_GET['lat'];
$lon = $_GET['lon'];
异步HTTP请求(AJAX)。也许是Websocket。无法传递给客户端(正如您所期望的)。您不能直接将javascript变量分配给php变量,请使用cookie来实现这一点抱歉,我不熟悉这一点。我真的很困惑,还没有找到解决办法。我在加载single-service.php时需要这个值。你能给我完整的代码吗。