PHP是MySQL DATETIME Field 14天前从今天起

时间:2013-06-20 21:50:27

标签: php mysql

我正在尝试编写PHP代码,以查看mysql数据库(2013-06-05)中的日期是否是14天或更早。

我使用MySQL SELECT语句选择了我需要的记录:

$sql="SELECT * from table ";
$rs=mysql_query($sql,$conn) or die(mysql_error());
while($result=mysql_fetch_array($rs))
{
    if(strtotime($result['datetime']) > strtotime('-14 days') )
    {
       echo 'yes';
    }
}

但它没有显示我所回应的内容。任何想法?

我基本上试图设置发票提醒系统。我有3列:

first_reminder
second_reminder
third_reminder

所以,在datetime字段后14天,它将发送电子邮件并在first_reminder字段中输入发送电子邮件的日期,然后在first_reminder日期后7天再次执行相同操作,依此类推。 ..

1 个答案:

答案 0 :(得分:1)

你可以用MySQL做到这一点,你将不得不考虑PHP有点不同。看看过去是否超过14天。

select * from table where some_date < curdate() - interval 14 day

查看是否在过去14天内。

select * from table where some_date > curdate() - interval 14 day

另一种方法是在DATEDIFF函数中拉出实际的天数差值作为计算(第一个数字减去第二个数字):

select *,DATEDIFF(CURDATE(),date_field) as days from table

然后在PHP中你可以做到

if ($row['days'] > 14){
  //it's two weeks old
}