Php 检查数据中的提前日期

Php 检查数据中的提前日期,php,mysql,Php,Mysql,我正在尝试运行一个查询,从现在起几天内就可以完成。基本上,今天,明天,等等 这是我的密码 $dateNow = date('Y-m-d'); $where .= ' AND `mb_sanctions`.`StartDate` > \'$dateNow\''; 我一直在开发人员工具上获取变量。我哪里出错了?假设stardate是一个日期列,为什么不使用: $where .= ' AND `mb_sanctions`.`StartDate` > now()'; 我认为你的问题应该

我正在尝试运行一个查询,从现在起几天内就可以完成。基本上,今天,明天,等等

这是我的密码

$dateNow = date('Y-m-d');

$where .= ' AND `mb_sanctions`.`StartDate` > \'$dateNow\'';

我一直在开发人员工具上获取变量。我哪里出错了?

假设
stardate
是一个日期列,为什么不使用:

$where .= ' AND `mb_sanctions`.`StartDate` > now()';

我认为你的问题应该是:

$where .= ' AND `mb_sanctions`.`StartDate` > ''' . $dateNow . '''';

您返回$datenow作为结果,因为您没有将日期连接到字符串,而是返回该变量的文本。

相反,您可以尝试以下操作:

$where .= ' AND `mb_sanctions`.`StartDate` > CURRENT_DATE';
您可以为此使用
DATE\u ADD()
,例如:

DATE(DATE_ADD(CURDATE(),INTERVAL 1 DAY))
上面的查询输出明天的日期

或者你也可以这样做:

$where .= ' AND DATE(`mb_sanctions`.`StartDate`) > DATE(CURDATE())';

从表中选择字段,其中DATE(column)>=CURDATE()。谢谢各位。