Php 以前的日期不起作用

Php 以前的日期不起作用,php,mysql,date,Php,Mysql,Date,日期格式有一些问题。它只显示了前30天,任何它不想工作的过去。非常感谢您的任何想法/帮助 $today=date("d-m-Y"); if(!$fetch_Tasks=mysql_query("SELECT * FROM `tasks` WHERE `due`<'".$today."'")) showerror(); while($tasks=mysql_fetch_array($fetch_Tasks)){ $now = time(); $your_date =

日期格式有一些问题。它只显示了前30天,任何它不想工作的过去。非常感谢您的任何想法/帮助

$today=date("d-m-Y");
if(!$fetch_Tasks=mysql_query("SELECT * FROM `tasks` WHERE `due`<'".$today."'"))
    showerror();
while($tasks=mysql_fetch_array($fetch_Tasks)){

    $now = time();
    $your_date = strtotime($tasks['due']);
    $datediff = $now - $your_date;
    echo "<font color=\"red\">[".floor($datediff/(60*60*24))." days overdue] </font>";

    echo $tasks['task']."<br>";
}
$today=日期(“d-m-Y”);

如果(!$fetch\u Tasks=mysql\u query(“从'Tasks'中选择*,其中'due`),则日期需要采用相同的格式。 职能: 截止日期() 可用于将两个日期转换为“自历元起秒数”格式 那么这个比较就是严格的数字比较


<代码> <代码>到期< /代码>停止使用弃权<代码> mysqL**>代码>函数;考虑使用PDO/myqLIVE是列的数据类型<代码>到期< /代码>。我也担心MySQL处理这个(<代码> D-M Y)。至于日期,您的问题是,您的数据库或结构中什么最可能导致这种情况。如果
due
是unix\u时间戳,则
$today
必须是
time()
,如果
due
是日期字段,则
$today
必须是Y-m-d格式,而不是d-m-Y格式