我正在为客户创建一个测验,我需要朝着正确的方向推动。
当用户开始测验时,计时器(计数)星星以毫秒,秒,分钟为单位计数。当所有问题都正确时,结果将存储在带有尝试次数和时间的表格中。
如何确保用户不只是进入 DOM 树并手动编辑时间?或者只是做一个简单的
$('#foo').disabled = false;
$('#foo').val('0.0.1');
我挖掘的一个想法是使用 php 比较两个不同的时间戳。一个当测验开始时和用户提交结果时,这是一个不好的做法吗?还是另一种方式?
如果你想阻止用户操纵结果,你需要在服务器端进行计算,在PHP中。
例如,将开始时间存储在会话变量$_SESSION['quizStart'] = time()
中(因此可以在不同的页面上访问),当表单完成时,PHP可以保存结束时间:$_SESSION['quizEnd'] = time()
。
这两个变量之间的区别在于您的持续时间:$quizDuration = $_SESSION['quizStart'] - $_SESSION['quizEnd']