动态检查mySQL数据库以查看当前时间是否已通过存储在数据库中的日期时间

时间:2012-02-04 00:56:20

标签: php mysql apache datetime dynamic

基本上我在我的网站上有一系列倒数计时器用于拍卖。我这样做是通过将倒计时结束时间存储在数据库中并使用javascript来创建倒计时。我只是想知道如何让网络服务器不断检查倒计时是否已经完成,如果有,则动态地将拍卖的状态从“未完成”改为“完成”。我应该在我的网络服务器上有一个不断运行的脚本吗?一直在查询数据库以检查是否已达到倒计时结束时间?

P.S。即时通讯使用apache,mySQL和PHP

任何观点或帮助表示赞赏!

约翰尼

2 个答案:

答案 0 :(得分:3)

不断检查根本不会扩展。结束时间不太可能发生变化,因此您可以将每次拍卖的结束时间传递到网页,并在达到该时间时使用javascript将状态更改为已完成。

当然,有人可以编辑javascript并更改结束时间,但客户端仅用于显示。您可以在结束时对服务器进行一次最终呼叫,以检查拍卖是否已延长。服务器仍然是该权限。任何提交仍然需要检查服务器时间,而不是用户计算机上显示的任何内容。

答案 1 :(得分:0)

对我来说逻辑就像这样

  1. 使用数据库值加载默认结束时间,并通过javascript运行计数器。
  2. 当经过时间即将到达拍卖结束时间时,只需1或2秒,您可以检查结束时间是否已更改并返回新值并将其反馈给Javascript计时器。
  3. 以上仅适用于因某种原因增加结束时间的情况。

    如果不是,你可以完全依靠javascript为你计算时间,当用javascript计数器达到结束时间时,只需快速调用ajax来更新你的数据库(如果需要的话)

    您应始终从数据库加载javascript函数的结束时间