Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/444.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jqueryajax将变量发布到php_Javascript_Php_Jquery_Ajax_W3c Geolocation - Fatal编程技术网

Javascript jqueryajax将变量发布到php

Javascript jqueryajax将变量发布到php,javascript,php,jquery,ajax,w3c-geolocation,Javascript,Php,Jquery,Ajax,W3c Geolocation,我的ajax.php脚本 <?php $lat =$_POST['lat']; $lon = $_POST['lon']; echo $lat; echo $lon; ?> 还有我的新.html页面 <!DOCTYPE html> <html><head><script src="jquery-1.12.0.min.js"></script> </head> <body> <p>C

我的ajax.php脚本

<?php
$lat =$_POST['lat'];
$lon = $_POST['lon'];
echo $lat;
echo $lon;
?>

还有我的新.html页面

<!DOCTYPE html>
<html><head><script src="jquery-1.12.0.min.js"></script>
</head>
<body>

<p>Click the button to get your coordinates.</p>
<input type="text" name="metin"/><br/>
<button onclick="getLocation()">Try It</button>

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


<p id="demo1"></p>
<script>

var x = document.getElementById("demo");
var y = document.getElementById("demo1");

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;
    var lon= position.coords.longitude;
    var lat= position.coords.longitude;
    y.innerHTML=lon;
    x.innerHTML=lat;
    $.ajax({
            type: 'POST',
            url: 'ajax.php',
            data:  { lat:lat, lon:lon}
             success: function(result) {
                $('#sonuc').html(result);
            },
            error: function() {
                alert('Some error found. Please try again!');
            }
        });
    }
}

</script>

<p id="sonuc"></p>
</body>
</html>

单击按钮获取您的坐标


试试看

var x=document.getElementById(“演示”); var y=document.getElementById(“demo1”); 函数getLocation(){ if(导航器.地理位置){ navigator.geolocation.getCurrentPosition(showPosition); }否则{ x、 innerHTML=“此浏览器不支持地理位置。”; } } 功能显示位置(位置){ x、 innerHTML=“Latitude:”+position.coords.Latitude+”
经度:“+position.coords.Longitude; var lon=位置坐标经度; var lat=位置坐标经度; y、 innerHTML=lon; x、 innerHTML=lat; $.ajax({ 键入:“POST”, url:'ajax.php', 数据:{lat:lat,lon:lon} 成功:功能(结果){ $('#sonuc').html(结果); }, 错误:函数(){ 警报('发现一些错误。请重试!'); } }); } }

首先,我知道有未使用的代码。但是我要用这个积木。 没有给我任何回应。我们必须成功地工作。 但在我的php页面中并没有给出lat和lon变量。
如果有另一种方法可以将变量发送到php页面,我可以试试。

代码中没有功能问题。但是有一些语法错误阻止了ajax请求

  • 避免在函数showPosition()下使用额外的右括号
  • 在ajax请求的数据部分后添加逗号
更正代码如下所示


var x=document.getElementById(“演示”);
var y=document.getElementById(“demo1”);
函数getLocation(){
if(导航器.地理位置){
navigator.geolocation.getCurrentPosition(showPosition);
}否则{
x、 innerHTML=“此浏览器不支持地理位置。”;
}
}
功能显示位置(位置){
x、 innerHTML=“Latitude:”+position.coords.Latitude+”
经度:“+position.coords.Longitude; var lon=位置坐标经度; var lat=位置坐标经度; y、 innerHTML=lon; x、 innerHTML=lat; $.ajax({ 键入:“POST”, url:'ajax.php', 数据:{lat:lat,lon:lon}, 成功:功能(结果){ $('#sonuc').html(结果); }, 错误:函数(){ 警报('发现一些错误。请重试!'); } }); }
您的ajax调用从未进行过,因为您有语法错误。您有一个额外的结束语
}
,并且在
数据:{lat:lat,lon:lon}
后缺少逗号,如果您打开浏览器控制台,您可能会注意到。@adeneo非常感谢您。我非常感谢。İt正在工作。再次感谢你。İ从1周开始处理。