2013-06-03 64 views
2

Basicallly,我想从Android手机接收GPS位置。首先,我发送一个AJAX请求到一个php文件。该文件将向手机发送请求以跟踪其位置。手机完成GPS跟踪后,它将数据发送回另一个PHP文件以更新数据库。我问的是如何使用AJAX进行加载进度,或者从我将请求从服务器发送到手机的时间到从手机收到数据的时间。如何知道手机已经完成GPS的东西并通知客户。非常感谢您的回答。AJAX加载进度

+0

每个GET调用都有一个回调,其中请求已完成。加载屏幕在Javascript/AJAX中并不存在。你必须自己做。然而,这并不难:在开始呼叫时获得加载的gif。并在请求完成时隐藏它! – CaptainCarl

+0

我可以这样做,在更新数据库的PHP文件上,我也可以在列中添加以显示此文件已收到足够的数据或不更新此列可能为true。在Ajax方面,我发送一个请求到另一个php文件来检查我在上面添加的数据库列是否这个列是真实的。但是,我必须不断地通过AJAX发送请求到这个文件来连续检查数据库,直到我收到响应OK。我是否真的必须这样做,或者无论如何要克服这一点。谢谢。 – themyth92

回答

1

好吧,我们假设你有第一#loading的ID的DIV,之后创建两个JS功能

function loading_show(){ 
$('#loading').html('<img src="images/loaders/loader2.gif" style="vertical-align:middle;" /> Please Wait!').fadeIn('fast'); 
} 

function loading_hide(){ 
$('#loading').fadeOut('fast'); 
} 

现在使用jQuery,如果有人点击该按钮来检索数据服务器

$('.selector').on("click", function() { 
     loading_show(); 
     $.ajax 
      ({ 
       type: "POST", 
       ...... 
       data: data, 
       success: function(msg) 
       { 
        loading_hide(); 
        //display results 
        //notify client about process  
       } 
      }); 
     }); 
+0

问题是我不知道它什么时候会成功,因为我无法将请求发送到手机发送的php文件,我根本不会收到任何内容。我想我可以在数据库中创建一个列,并让从手机接收到的php文件更新它。之后,我会发送AJAX请求到另一个php文件,该文件检查这一列并收到回复。然而,我必须不断地这样做,直到列返回true。所以我不知道如何实现这个 – themyth92

+0

也许你可以使用触发器(db) – bestprogrammerintheworld

+0

我已经做了一些研究,他们说数据库中的触发器不能传递给php,所以我认为不能使用。 – themyth92