我正在嘗試使用CakePHP創建基於Web的測試(如在考試中)應用程序。Web應用程序中的計時器
當測試開始的網絡服務器存儲會話的確切的開始時間。當測試結束並且客戶端將答案提交給網絡服務器時,網絡服務器將重新檢查提交時間與之前的開始時間。如果總測試時間在指定的誤差範圍內(例如5分鐘),測試結果將被接受。
我已經完成了這個部分,目前使用jQuery Countdown Plugin顯示在客戶端(瀏覽器)的定時器。此計時器還用於在表單過期時自動提交表單。
問題是刷新頁面將復位定時器。回去和前進也會這樣做(因爲它本質上是令人耳目一新)。
儘管在服務器中記錄並驗證了總測試時間(如果用戶篡改了定時器並提交了測試,系統將拒絕該測試),是否有防止這種情況或至少發出警告,甚至更好,在用戶被篡改的情況下自動提交測試(當然會被拒絕)?
我知道我可以通過使用AJAX(仍然是初學者)做到這一點,但上級告訴我,由於帶寬限制(我不這麼認爲),我不這麼做。所以......任何人?
以前謝謝!
好吧,實際上它就是我想要的同步功能:)已經完成了這個工作......謝謝! – Furunomoe 2010-02-05 06:45:33
你的意思是同步的結束時間,或者你想重新同步,而頁面被覆蓋。後者就是我所指的,它只適用於你的應用程序是實時的(而不是試圖限制在考試上花費的時間)。基本上,如果你認爲這兩個時鐘可能會在一頁中漂移,那麼你可能想要重新同步。否則,我只是相信客戶的時鐘,而不用擔心在頁面內同步(當然,請記住檢查服務器是否允許提交,不要信任客戶端JS執行此操作)。 – 2010-02-06 19:08:33