gpt4 book ai didi

php - 如何使用 DATEDIFF 选择行?

转载 作者:行者123 更新时间:2023-11-29 08:47:07 24 4
gpt4 key购买 nike

我正在使用this calendar使用 mySQL 数据库显示客户议程的插件。日历使用 start 向我的脚本发送请求和end UNIX 时间戳如下:

/getevents.php?start=1262332800&end=1265011200&_=1263178646
//That last piece of data is to prevent caching.. apparently

在我的脚本中,我将 UNIX 时间戳转换为 mySQL datetime像这样的对象:

$start = $_GET['start'];
$end = $_GET['end'];
$start = gmdate("Y-m-d H:i:s", $start);
$end = gmdate("Y-m-d H:i:s", $end);
printf($start.".....".$end);

这会正确打印如下内容(当我导航到 2012 年 9 月时):

2012-08-26 04:00:00.....2012-10-07 04:00:00

现在我想从数据库中选择这些日期之间的所有事件。我的数据库只有 1 行,并且 start字段是今天的日期:

 id     start                   end
10 2012-09-05 20:27:00 0000-00-00 00:00:00

但是使用以下 SQL 语句,我没有得到结果。我尝试反转 ><只是为了它,但仍然一无所获。我根本没有收到任何错误,只是没有结果。

$sql = "SELECT * FROM all_events WHERE DATEDIFF('$start', 'start') > 0";
$result = mysql_query($sql, $link) or die(mysql_error());
echo "Rows:".mysql_num_rows($result);

如您所见,现在我只是检查start事件的数量大于start日历的日期范围。即 8 月 26 日是 start九月。

我没有发现任何问题...请帮忙!我快把头发扯下来了!

最佳答案

不要使用单引号作为列名,而是使用反引号。试试这个

SELECT * FROM all_events WHERE DATEDIFF(`start`, '$start') > 0

关于php - 如何使用 DATEDIFF 选择行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12291746/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com