2013-06-05 33 views
0

有人可以幫我與JS/AJAX倒計時我希望有一個倒數計時器,以10秒然後更新數據庫,並刷新頁面,一旦它擊中0JavaScript的倒計時更新數據庫,並刷新

我不是真的良好的JavaScript/AJAX,這裏是我走到這一步:

var ss = 10; 
function countdown() { 
ss = ss-1; 
if (ss<0) { 
var url='update.php?countdown='+countdown; 
} 
else { 
document.getElementById("countdown").innerHTML=ss; 
window.setTimeout("countdown()", 1000); 
} 
} 

<span id="countdown" style="color:green;">10</span> 

和update.php文件,巫正常工作:

if (isset($_REQUEST['countdown'])) {  
    mysql_query("INSERT INTO num (id, ad, active) 
    VALUES ('1', 'Test',1)") or die(mysql_error()); 
    } 

而且這是我發現http://pastebin.com/Qwz3Zqtt,工作很好,但我不知道如何把它們放在一起。

任何幫助將不勝感激。

感謝

+0

你想在屏幕上運行的冷卻定時器,當時間是做出來的一個SQL查詢? –

+0

是的,就像一個簡單的倒計時從10到0秒一旦完成計時器做sql或使用var url ='update.php?countdown ='+倒計時; ,像這裏http://pastebin.com/Qwz3Zqtt 184行 – i99ks

+0

倒計時變量應該是什麼?而且,你希望頁面刷新後,數據庫更新?順便說一句,好的和簡單的倒計時:http://www.electrictoolbox.com/using-settimeout-javascript/ - 你只需要使用而不是按鈕 – sinisake

回答

0

你將要學習基本的AJAX來處理數據庫請求。 jQuerya very easy to use implementation

基本的代碼可能是這樣的:

<script> 
function updateTimer(seconds){ 
    var countdown = document.getElementById('countdown'); 
    countdown.innerHTML = "Please wait " + seconds + " seconds."; 
} 

var timer = function() { 
    var seconds = 10; 
    var interval = setInterval(function(){ 
     if (seconds <= 0){ 
      countdown.innerHTML = "Finished.. Updating Database"; 
      // AJAX request here 
      clearInterval(interval); 
     }else{ 
      updateTimer(seconds);    
      --seconds; 
     } 
    }, 1000); 
    updateTimer(seconds);  
    --seconds; 
} 

document.getElementById('start').addEventListener('click', timer); 
</script> 

<div id="countdown"></div> 
<button id="start">Click Me</button> 

Here's a fiddle

+0

甜,這就是我一直在尋找, 謝謝 – i99ks

0

使用jQuery ajax

最簡單的例子:

if (ss<0) { 
    $.ajax('update.php?countdown='+countdown); 
}