我通过POST将变量“ lasttime”发送到我的PHP脚本。此变量包含一个时间戳记作为字符串。在我的MySQL数据库中,我有一列“时间”。该列的类型为“ TIMESTAMP”,并通过更新当前时间戳输入。

我想从数据库中选择在变量$ lasttime中具有时间戳之后具有时间戳的所有行。

我的查询:

SELECT * FROM mytable WHERE UNIX_TIMESTAMP(time) > '$lasttime'


问题是,所有行都被返回。我该如何解决?

最佳答案

如果您要在$ lasttime中传递格式为datetime的字符串(例如2014-04-19 03:04:05),则必须首先将其标准化为unixtime:$unixtime = strtotime($lasttime)
然后,SQL查询将看起来像SELECT * FROM mytable WHERE UNIX_TIMESTAMP(time) > $unixtime

08-19 10:28