我目前需要幫助的同志在這裏。我正在開發基於php的應用程序開發,應用程序是quesionaire系統,當用戶已經啓動(點擊開始按鈕)時,系統有倒數計時器60分鐘。 到目前爲止,當用戶在會話登錄時,我可以將計時器推到數據庫,我每秒更新一次數據庫。而當前系統是當用戶註銷倒數計時器時將停止,例如30分鐘倒計時用戶註銷。所以當用戶登錄後仍然會得到30分鐘。當用戶關閉瀏覽器時,保持與數據庫mysql的通信
但我的客戶不喜歡它。我的客戶想要如果用戶已經點擊開始按鈕,倒數計時器將繼續直到60分鐘,即使用戶沒有註銷直到60分鐘或用戶關閉瀏覽器直到60分鐘。
那麼我的問題如何實現呢?用戶點擊按鈕啓動時我必須做什麼? 我想當用戶單擊按鈕啓動時會將計時器向數據庫mysql倒推,儘管用戶關閉瀏覽器倒計時總是會推送到數據庫。
結構的數據庫表:
- id (int) auto_increment;
- user_id (int);
- residual_time (int); <--I push it per second, so per second will update it until 0.
我的服務器使用Linux操作系統Ubuntu的服務器。我是服務器的所有者。
謝謝。
只需保存的開始時間一次,並計算出當前時間顯示的差異。無需在數據庫中進行倒計時。 –
你好@JoachimIsaksson感謝您的回覆,但是如果它沒有倒計時並保存到數據庫系統不知道用戶哪些是最多60分鐘。 –
當用戶點擊開始時,節省時間。在以後的任何時候,當你需要知道剩下多少時間時,只要拿出當前時間並減去開始時間,如果差異超過一個小時,他的時間就會增加。我的意思是,你只需要保存開始時間_once_,而不是每秒都在數據庫中倒數。 –