在日期之前选择光盘 - SQL

时间:2012-01-18 22:28:11

标签: php mysql sql date

我这里有一段代码,但我不确定它是否100%有效。所以我想我可以问你,谷歌没有给我一个直接答案,所以我希望你能。我想要做的是显示DIV,如果当前日期早于数据库中给出的日期。如果日期是过去的话,则不应显示我的DIV。

PHP / SQL:

$sql = mysql_query("SELECT * FROM `tournaments` WHERE `deadline` > CURDATE()");

这是我正在寻找的正确代码吗?

谢谢你的时间!

2 个答案:

答案 0 :(得分:3)

可能想要添加等号,因为它不会显示div作为截止日期

$sql = mysql_query("SELECT * FROM `tournaments` WHERE `deadline` >= CURDATE()");

否则这似乎很好。你会构建逻辑:

<?PHP
$result = mysql_query($sql) or die(mysql_error());
if (mysql_num_rows($result) == 0) {
    // nothing to show
    echo "<div>No results</div>\n";
} else {
    // found data to display
    while ($Row = mysql_fetch_array($result)) {
        ?>
        <div style='float:left;width: 150px;'>Data Title</div>\n";
        <div style='float:left; margin-left: 15px;'><?PHP echo $Row['yourdatafield']; ?></div>;
        <div style="clear:both;"></div>
        <?PHP
    }
}
?>

答案 1 :(得分:1)

不,你应该使用DATEDIFF()

"SELECT * FROM `tournaments` WHERE DATEDIFF(`deadline`, CURDATE()) > 0"