使用会话创建计时器

时间:2014-02-13 04:33:01

标签: javascript php html session

我正在进行“在线考试”项目。我为计时器创建了一个会话变量,并将其设置为1800秒,等于30分钟。

我使用ajax调用来获取会话值并且每件事情都运行正常但是,每当我重新加载浏览器(或)关闭浏览器并打开同一页面时,它就不会从我离开的最后一个地方恢复。

我该怎么做?

我正在使用PHP进行服务器端脚本编写。

THX IN ADVANCE。

3 个答案:

答案 0 :(得分:1)

会话在关闭浏览器时被破坏。但是重新加载页面应该从浏览器获取值(不关闭浏览器)。检查客户端的sessionStorage对象以获取会话数据。

如果您不想在浏览器重新启动时丢失计时器值,请在cookie中显示计时器值

确保从后端启动会话,即session_start() 并保存你的变量

答案 1 :(得分:0)

您需要控制控制会话生命周期的两件事。

  • session.cookie-lifetime: cookie的生命周期,默认为0,表示在浏览器关闭时cookie被销毁。您可以通过增加此变量来设置更长的生命周期。

  • session.gc-maxlifetime: 此选项检查会话数据的上次访问时间,因此它相对于上次使用会话数据的时间。

例如,如果您需要一年的cookie时间:

ini_set('session.cookie_lifetime', 60 * 60 * 24 * 365);
ini_set('session.gc-maxlifetime', 60 * 60 * 24 * 365);
session_start();

*将您自己的时间用于您的目的。

答案 2 :(得分:0)

将测试的开始时间存储在数据库中。

我假设您的online examination不是全部静态html,对..