2013-02-09 46 views
0

我有一個要求,使倒計時計時器自動重新啓動時間已過去。如何使倒數計時器自動重新啓動使用PHP

例如,我需要從英國時間下午3點或15點開始倒計時,並重置時間到達時再次開始計數。

我一直在嘗試使用一些jQuery,但它會顯示瀏覽器時間而不是服務器時間。如果有人能夠分享解決方案,請告訴我。

在此先感謝!

下面的代碼是一個工作示例從完美的作品:當你正在編寫包含該JavaScript文件只需設置變量存在,而不是讓JavaScript來做到HTML https://gist.github.com/Majestik/3964527

if (document.getElementById('countdownTimer')) { 
    pad = function(n, len) { // leading 0's 
     var s = n.toString(); 
     return (new Array((len - s.length + 1)).join('0')) + s; 
    }; 
    function countDown() { 
     var now = new Date(); 
     if ((now.getDay() >= 1) && (now.getDay() <= 5)) { // Monday to Friday only 
      var target = 15; // 15:00hrs is the cut-off point 
      if (now.getHours() < target) { // don't do anything if we're past the cut-off point 
       var hrs = (target - 1) - now.getHours(); 
       if (hrs < 0) hrs = 0; 
       var mins = 59 - now.getMinutes(); 
       if (mins < 0) mins = 0; 
       var secs = 59 - now.getSeconds(); 
       if (secs < 0) secs = 0; 
       var str = pad(hrs, 2) + ':' + pad(mins, 2) + '.<small>' + pad(secs, 2) + '</small>'; 
       document.getElementById('countdownTimer').innerHTML = str; 
      } 
     } 
    } 
    var timerRunning = setInterval('countDown()', 1000); 
} 

Time remaining: <span id="countdownTimer"><span>00:00.<small>00</small></span> 
+0

從var time = new Date開始(<?php echo microtime();?>) – mplungjan 2013-02-09 09:50:28

+2

在頁面加載時從服務器獲取時間。請在您提出問題之前,縮進您的代碼,並至少嘗試谷歌您的問題。有很多倒計時的例子,您只需稍作修改 – JohnJohnGa 2013-02-09 09:51:53

回答

1

在你的PHP代碼它一旦加載完畢,這樣你就可以使用服務器時間而不是瀏覽器時間。

+0

感謝您的幫助! – user1704524 2013-02-09 11:19:27

+0

我發現這個非常整齊的腳本,完全符合我的要求。你可以在這裏找到它:https://gist.github.com/Majestik/3964527 – user1704524 2013-02-23 17:32:30