シンプルなmysqli_queryを使用すると、データベースからすべてのタスクを取得できます。すべてのタスクに期限があります。私は個々のタスクごとに何日残っているのかを計算したい。それが終わったら、残りの日に基づいてすべてのタスクを注文したいと思います。どうすればこれを達成できますか?MySQLをどのように並べ替えるには?
$sql = mysqli_query($mysqli, "SELECT * FROM tasks");
while($rows=mysqli_fetch_array($sql,MYSQLI_ASSOC)){
$deadline = $rows['deadline'];
$today = strtotime('now');
$date_diff = $deadline - $today;
echo $date_diff;
}
しかし、私は$ date_diffでどのようにそれらを注文できますか?
'トンを選択します。*、DATEDIFF(日、t.deadline、CURDATE())(日、 '期限'、CURDATE())あなたには結果をソート' – Blinkydamo
SQLに 'ORDER BY'を付けます。しかし、あなたは実際にあなたのテーブルに存在する*すべてのタスクを、何年も前に実行されたタスクとして見せたいのですか? 'WHERE'節を追加したいかもしれません。テーブルにはステータスフィールドがいくつかあるので、終了したタスクを除外することができます(締め切りを過ぎたタスクは必ずしも完了していないため)。 –