Ajax请求不指向URL

时间:2017-12-17 11:30:32

标签: javascript php jquery ajax

我在我的文档中一直在处理其他ajax请求,但我没有遇到任何问题。我想在加载文档时找到用户的坐标,然后将这些数据传递给其他方法来计算距离。

我已经创建了一个在index.php加载时调用的javascript文档。这是功能:

function getCurrentLocation(username) {
var latitude = "";
var longitude = "";

if (navigator.geolocation) {
 navigator.geolocation.getCurrentPosition(function(position) {
  var pos = {
    lat: position.coords.latitude,
    lng: position.coords.longitude
  };

  latitude = position.coords.latitude;
  longitude = position.coords.longitude;

  console.log(latitude);
  console.log(longitude);

  sendCoords(latitude, longitude, username);

});
}

}

function sendCoords(lat, long, username){

$.ajax({
type: "POST",
url: "includes/handlers/ajax_update_loc.php",
data: "lat=" + lat + "&long=" + long + "&username=" + username,

success: function() {
  console.log("UPDATE LOCATION");

}
});
}

我添加了一系列日志来跟踪逻辑,它按预期顺序工作。不会调用url文件ajax_update_loc.php中的日志。

这是ajax_update_loc.php`文件:

<?php

include("../../config/config.php");
include("../classes/User.php");

$currentLoc = new User($con, $_REQUEST['username']);
$currentLoc->updateLocation($_REQUEST);

?>

<script>

console.log("OP")
</script>

<?php

?>

任何帮助将不胜感激!干杯!

1 个答案:

答案 0 :(得分:1)

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script>
function getCurrentLocation(username) {
var latitude = "";
var longitude = "";

if (navigator.geolocation) {
 navigator.geolocation.getCurrentPosition(function(position) {
  var pos = {
    lat: position.coords.latitude,
    lng: position.coords.longitude
  };

 var latitude = position.coords.latitude;
 var longitude = position.coords.longitude;

  console.log(latitude);
  console.log(longitude);

  

});
}

}

function sendCoords(){

$.post("includes/handlers/ajax_update_loc.php",{latitude:latitude, longitude:longitude, username:username},function(data) {
      console.log(data);
      
   });

</script>

这里你可以在更新文件中用ajax发送参数然后你可以用它们来更新位置