【问题标题】:Cookie or JavascriptCookie 或 JavaScript
【发布时间】:2012-02-12 18:18:19
【问题描述】:

我正在尝试为游戏制作倒数计时器。问题是,当用户移动到另一个页面时,倒计时不能继续剩余时间。我正在尝试设置 cookie 和会话,但我对此一无所知。

【问题讨论】:

  • 您有任何示例代码可以为我们指明方向吗?这是一个可以为您完成工作的倒计时脚本 - keith-wood.name/countdown.html
  • 这是一个从 cookie 开始的好链接:quirksmode.org/js/cookies.html 将此与之前的评论结合起来,您应该可以开始了!
  • 我没有示例代码...但我想出了另一种方法...谢谢大家...

标签: php javascript cookies


【解决方案1】:

Cookie 会随着每个 HTTP 请求来回发送,因此应避免存储不必要的变量。

要在服务器端维护计时器,会话是最佳选择。它将自动处理 cookie 业务,仅创建最低限度的 cookie 开销来跟踪会话。会话变量存在于服务器上,并通过唯一的 cookie 连接到 HTTP 请求。

关于倒数计时器:由于您无法在服务器上运行某个函数来不断翻转位,因此最好的办法是跟踪结束时间。

要在 PHP 中启动会话,请使用 session_start()。然后将您的值存储在 $_SESSION[] 数组中,它们将在请求中持续存在。这是一个例子:

<?php
session_start();
if (!isset($_SESSION['endTime']))
{
    $_SESSION['endTime'] = time() + 60; // end time is 60 seconds from now
    echo "Started a new timer"
}
else if ($_SESSION['endTime'] > time())
{
    echo "Time left: " + ($_SESSION['endTime'] - time());
}
else
{
    echo "Time is up.";
}

【讨论】:

  • 我可能会建议对您的代码进行更正 不应该!在第二个如果它应该是 else if ($_SESSION['endTime'] > time()) sho time
猜你喜欢
  • 2012-10-12
  • 2019-09-15
  • 1970-01-01
  • 1970-01-01
  • 2012-12-27
  • 1970-01-01
  • 1970-01-01
  • 2013-07-08
  • 1970-01-01
相关资源
最近更新 更多