2012-04-30 118 views
0

我使用的是php和mysql,並且沒有Java知識。搜索後,我發現了很多JavaScript的倒計時定時器,但它們都是客戶端。我正在尋找一些基於服務器端的東西。 我有一個名爲TimeRemaining的列在MySQL中的表。該欄存儲未來的時間記錄。我需要用最少的剩餘時間加載記錄,以便當它達到零時,表中的記錄被刪除,並且新的倒數計時器以剩餘時間最少的下一個記錄開始。另外,如果在剩餘時間最少的情況下插入的新記錄的剩餘時間少於上一條記錄,則需要使用新記錄更新計時器。 這是可能的和/或通過使用觸發器來更新MySQL中的事件,或者我可以創建一個倒數計時器在PHP中。mysql-php倒數計時器 - 服務器端

謝謝大家的幫助。 編輯: 我提到Java/Javasript,因爲我想避免它,因爲我沒有它的知識,並通過研究,我看到了大多數使用Java的帖子。 爲了更好地理解我想要做什麼,多個用戶被禁止在論壇中創建帖子7天。我在mysql中有一個表,用於存儲禁止和到期時間。當7天到期時,我需要自動從表格中刪除該記錄。用戶應該無法控制該計時器。我不需要顯示網頁上的剩餘時間。我需要這個在沒有用戶干預的背景下發生。這更清楚嗎?

+1

如果您要存儲未來時間,則根本不需要倒數計時器。 你的意思是你想要顯示在你的頁面上有多長時間?你不能在PHP中這樣做,你需要使用JavaScript。 – gcochard

+4

「*我正在使用php和mysql,並且沒有Java知識*。」你想用Java做什麼? – Lion

+2

你的架構存在嚴重問題。看起來應該爲數據庫中的'刪除'記錄節省時間,然後使用cron運行PHP腳本以在需要時刪除記錄。 – Scorpil

回答

0

考慮到你說過你對JavaScript有一點了解,我會在你的頁面上創建一個iframe來自動刷新並顯示相應的最後一次檢查。

3

你想做這個客戶端。在頁面加載時,您可以從SQL表和客戶端倒計時中抽出倒計時時間。一旦時間完成,您可以再次對服務器(PHP)執行一次調用(同步或AJAX)以刪除該記錄。

+0

獅子,我想避免Java/Javascript,如果可能的話,因爲我不知道它。例如,有人被禁止在論壇上創建帖子7天。我在mysql中有一個表,用於存儲結束時間。當7天到期時,我需要自動從表格中刪除該記錄。這更清楚嗎? –

+0

Ray,對於這種情況,您希望每24小時都有一份工作向非關鍵人員運行,或者您也可以在用戶表中禁用結束日期列,並在用戶登錄時檢查該列。當前日期超過禁止結束日期,那麼用戶很好走。如果你肯定想要「倒計時」並刪除一行,你不會想使用PHP。 – dweiss

+0

謝謝dweiss,我絕對不希望僅在用戶登錄時更新表。我希望在確切的時間刪除記錄,無論用戶是否登錄。我想我可能會在mysql中創建一個事件來刪除記錄,並在/如果需要時讓php更改事件。 –