【问题标题】:Sort clanwars by date, without showing before today按日期对战队进行排序,今天之前不显示
【发布时间】:2013-09-12 17:51:46
【问题描述】:

我想按日期对部落战进行排序,而不显示今天之前的部落战(也显示今天的部落战,">="),但我不知道如何,我正在使用 webspell (CMS) 和不知道该怎么做。这是代码:

$ergebnis=safe_query("SELECT * FROM ".PREFIX."clanwars ORDER BY date ASC LIMIT 0, ".$maxresults);

我们将不胜感激。

【问题讨论】:

    标签: php mysql date helper


    【解决方案1】:
    $ergebnis=safe_query(
    "SELECT *
    FROM ".PREFIX."clanwars
    WHERE `date` > DATE(NOW())
    ORDER BY `date` ASC LIMIT 0, ".$maxresults);
    

    NOW()返回当前日期和时间,DATE()只返回日期部分,相当于2013-09-12 00:00:00

    【讨论】:

    • 谢谢,但也不能正常工作,它会显示 9 月 6 日、9 日等的部落战,但我希望这些部落战隐藏起来。
    【解决方案2】:

    试试这个:

    $ergebnis=safe_query("SELECT * FROM ".PREFIX."clanwars WHERE date >= curdate() ORDER BY date ASC LIMIT 0, ".$maxresults);
    

    编辑:将日期字段转换为 MySQL 日期格式

    $ergebnis=safe_query("SELECT * FROM ".PREFIX."clanwars WHERE STR_TO_DATE(date, '%d.%m.%Y') >= curdate() ORDER BY date ASC LIMIT 0, ".$maxresults);
    

    【讨论】:

    • 我在 9 月 6 日、9 月 8 日等有部落战。我不想在今天之前显示部落战。
    • 您的日期列是什么类型,您说失败的日期的确切值是多少?他们是“2013-09-06”和“2013-09-08”吗?
    • 不,这是设置日期的代码:$date=date("d.m.Y", $ds['date']);它的 06.09.2013。它的网络拼写,因此您可以在 Calendar.php phpkode.com/source/p/webspell/calendar.php 中查看它是如何工作的,并在 phpkode.com/source/p/webspell/sc_results.php 中查看我要更改的内容
    • 再次感谢弗拉德,但它不起作用。现在它显示部落战空白,所以可以看到任何东西。
    • date的列类型是什么?
    猜你喜欢
    • 2014-12-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-27
    相关资源
    最近更新 更多