1

我正在尝试编写 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

因此,在该字段后 14 天,datetime它将发送一封电子邮件并将发送电子邮件的日期放在 first_reminder 字段中,然后在 first_reminder 日期后 7 天,它将再次执行相同的操作,依此类推...

4

1 回答 1

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
}
于 2013-06-20T23:17:02.177 回答