首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP/MySQL删除前间隔

问PHP/MySQL删除前间隔
EN

Stack Overflow用户
提问于 2014-04-15 15:25:21
回答 2查看 121关注 0票数 0

因此,我想要我的MySQL排删除,当它已经添加了2小时后,由上述用户。

这是我所拥有的

代码语言:javascript
复制
$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());

但是当我运行它的时候,它是删除每一行,即使它还不到两个小时。

如果这有帮助,我的插入查询;

代码语言:javascript
复制
$now = date('Y-m-d H:i:s', time());
 mysql_query ("INSERT INTO my_table (name, email, time) values ('$Name', '$Email','$now')");
    echo 'Proceed';
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-04-15 15:27:04

试试这个:

代码语言:javascript
复制
$query = "DELETE FROM my_table WHERE DATE_ADD(`time`, INTERVAL 2 HOUR) < NOW()";

它会为列值增加两个小时,如果较少,则将删除当前时间。

SQL Fiddle

票数 2
EN

Stack Overflow用户

发布于 2014-04-15 15:39:18

您的MySQL服务器和HTTPD是否是同一台机器(我知道我的不是)?因为您正在用来自PHP服务器的时间插入您的MySQL数据,然后与MySQL时间进行比较.

最好这样插入:

代码语言:javascript
复制
 INSERT INTO my_table(name,email,time) VALUES ('$name','$email',NOW())

至少这将确保比较正确的时间..。

还要确保时间被定义为日期时间,而不仅仅是日期。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23088087

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档