我們如何實現一個定時器來每隔一分鐘發送一次ajax請求來刷新數據(如數據庫上其他用戶的新條目)。我使用jquery的$ .ajax。我們如何使用ajax jquery每分鐘刷新一次數據?
我的意圖是發送上次更新的時間,以便服務器不發送重複的數據。只有在那之後創建的行。
我的服務器腳本是php。
我們如何實現一個定時器來每隔一分鐘發送一次ajax請求來刷新數據(如數據庫上其他用戶的新條目)。我使用jquery的$ .ajax。我們如何使用ajax jquery每分鐘刷新一次數據?
我的意圖是發送上次更新的時間,以便服務器不發送重複的數據。只有在那之後創建的行。
我的服務器腳本是php。
發送日期和時間,您可以使用此功能
var date = new Date();
var date = date.getUTCFullYear() + '-' +
('00' + (date.getUTCMonth()+1)).slice(-2) + '-' +
('00' + (date.getUTCDate()).slice(-2) + ' ' +
('00' + date.getUTCHours()).slice(-2) + ':' +
('00' + date.getUTCMinutes()).slice(-2) + ':' +
('00' + date.getUTCSeconds()).slice(-2);
上面會格式化MySQL的格式,你通過變量MySQL查詢的日期和時間,然後使用setInterval
每分鐘後,通過當前時間
setInterval(function(){
$.ajax({
type:"POST",
data:"Time="+ date,
url:"serverRef",
success: function(data){
// On success
}
});
},60000);
注意:您也可以使用同樣的技術在服務器端以及
setInterval
使用jQuery」 s post會創造奇蹟。確保你有很多訪問者,記住要緩存,否則你可以在沒有注意的情況下進行大量查詢,過去我注意到這些查詢可能會壓倒某些主機,實質上會讓你脫機。
var ajax = window.setInterval(function(){
$.post('path/to/my/script.php', function(data){
if(data == "stop")
{
clearInterval(ajax);
return;
}
$('#statistics').html(data);
});
}, 60000);