I'm trying to create a web based test (as in exam) application with CakePHP.
When a test is started the webserver stores the exact start time in session. When the test ended and the client submit the answers to the webserver, the webserver will recheck the submission time with the previous start time. If the total test time is within a specified error margin (e.g. 5 min), the test result will be accepted.
I've done this part already and currently using the jQuery Countdown Plugin to display the timer in the client (browser). This timer is also used to automatically submit the form if it's expired.
The problem is refreshing the page will reset the timer. Going back and forward will also do so (as it's essentially refreshing).
Altough the total test time taken is recorded and verified in the server (if a user tampered with the timer and submitted the test, the system will reject it), is there anyway to prevent this or at least give a warning, or even better, submit the test automatically in the event of user tampering (which of course will be rejected)?
I know I might be able to do that by using AJAX (still a beginner in this), but the higher-ups told me not do to so because of bandwidth limitation (which I don't think so). So... anyone?
Thanks before!