因此,我想要我的MySQL排删除,当它已经添加了2小时后,由上述用户。
这是我所拥有的
$Link = MySQL_Connect // etc
$now = date('Y-m-d H:i:s', time())
$query = "DELETE FROM my_table WHERE time < NOW() - INTERVAL 2 HOUR";
$result = mysql_query($query) or die ('unable to run: ' .mysql_error());但是当我运行它的时候,它是删除每一行,即使它还不到两个小时。
如果这有帮助,我的插入查询;
$now = date('Y-m-d H:i:s', time());
mysql_query ("INSERT INTO my_table (name, email, time) values ('$Name', '$Email','$now')");
echo 'Proceed';发布于 2014-04-15 15:27:04
试试这个:
$query = "DELETE FROM my_table WHERE DATE_ADD(`time`, INTERVAL 2 HOUR) < NOW()";它会为列值增加两个小时,如果较少,则将删除当前时间。
发布于 2014-04-15 15:39:18
您的MySQL服务器和HTTPD是否是同一台机器(我知道我的不是)?因为您正在用来自PHP服务器的时间插入您的MySQL数据,然后与MySQL时间进行比较.
最好这样插入:
INSERT INTO my_table(name,email,time) VALUES ('$name','$email',NOW())至少这将确保比较正确的时间..。
还要确保时间被定义为日期时间,而不仅仅是日期。
https://stackoverflow.com/questions/23088087
复制相似问题