我试图每分钟连接到服务器并传入当前时间的变量,这将是最后一次更新。在服务器端 php 文件中,我计划将传入的时间变量与数据库行中的 TIMESTAMP 进行比较;很像 if (time1-time2 > certain value)...
到目前为止,javascript 代码是:
var time;
var timer_is_on = 0;
localStorage.lastUpdate = 0;
localStorage.numUpdates = 0;
function timedCount()
{
localStorage.lastUpdate = new Date();
//connect to server
contactServer(localStorage.lastUpdate);
currentCount=currentCount+1;
time=setTimeout("timedCount()",60000);
}
我的问题是我这样做是否正确。我将 localStorage.lastUpdate
声明为 new Date()
,但我不确定这是否正确?我尝试过循环,每分钟 lastUpdate
似乎都是相同的日期和时间。
我的最后一个问题是我是否可以真正比较 javascript 和 php 的两种时间格式。在 SQL 时间戳中,格式为 2012-03-20 11:14:40
,而 javascript new Date()
中的日期格式为 Tue Mar 20 2012 年 12:32:44 GMT-0400(东部夏令时间)
。
任何信息都会有帮助,谢谢!
最佳答案
使用时间时要小心。您的服务器时间可能与客户端时间不同。最适合您的是将上次请求的日期存储在 $_SESSION['last'] 中。 有了这个解决方案,您的所有问题都不再存在。您的 PHP 设置了日期,因此它是相同的引用,并且格式良好。
只需在客户端保留超时:-)
关于php - 更新本地存储中的时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9791266/