0

我正在尝试运行一个查询,该查询将从这里开始几天。基本上,今天,明天,等等。

这是我的代码..

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

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

我不断在我的开发人员工具上获取变量..我哪里出错了?

4

4 回答 4

2

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

$where .= ' AND `mb_sanctions`.`StartDate` > now()';
于 2012-08-08T13:08:37.477 回答
2

我认为您的查询应该是:

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

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

于 2012-08-08T13:08:39.640 回答
2

相反,你可以试试这个:

$where .= ' AND `mb_sanctions`.`StartDate` > CURRENT_DATE';
于 2012-08-08T13:08:45.547 回答
2

您可以DATE_ADD( )为此使用,例如:

DATE(DATE_ADD(CURDATE(),INTERVAL 1 DAY))

上面的查询输出明天的日期。

有关 DATE_ADD( ) 的更多信息

或者你也可以这样做:

$where .= ' AND DATE(`mb_sanctions`.`StartDate`) > DATE(CURDATE())';
于 2012-08-08T13:08:48.817 回答