0

我有这段代码,我用它来比较时间戳字段和我之前选择的日期!但是我在语法上遇到错误..怎么办?

$query = sprintf( 'SELECT * FROM coupon WHERE date("Y-m-d", "time") = $date' );

错误是:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' "time") = $date' at line 1

同时,我正在比较一个时间戳,即现场时间,以及一个$date 提前感谢的日期..

4

2 回答 2

1

time不应引用,因为它是字段引用,而不是字符串文字

$query = sprintf('SELECT * FROM coupon WHERE DATE(time) = $date');

注意:您容易受到SQL 注入的影响。

于 2012-11-12T22:28:39.833 回答
0

你把 PHP 函数弄混了

date ( string $format [, int $timestamp = time() ] )

和 MySQL 函数。

DATE( expr )

分别见手册条目:

http://php.net/manual/en/function.date.php

http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_date

于 2012-11-12T22:52:53.137 回答