DBには、26日と31日がありますが、OKに変更されていません。 3日目になり、[OK]に変更します。PHP MYSQLの日付範囲が逃した日
ここで私はこのコードで間違っていますか?
コード:
*$from = date("Y-m-01");
$to = date("Y-m-t"); // last day current month
$query = "SELECT date FROM tbl_data WHERE date BETWEEN '$from' AND '$to' order by date DESC";
$result = mysqli_query($mysqli,$query);
while ($row = mysqli_fetch_array($result, MYSQL_ASSOC))
{
$date = date_create_from_format('Y-m-d', $row['date']);
}
$cursor = date_create_from_format('Y-m-d', $from);
$finish = date_create_from_format('Y-m-d', $to);
while ($cursor != $date)
{
echo date_format($cursor,'Y-m-d') . "--- Missed <br>";
date_modify($cursor, '+1 day');
while($cursor == $date)
{
echo date_format($date,'Y-m-d') . "--- OK <br>";
date_modify($cursor, '+1 day');
}
while($cursor > $finish)
{
die();
}
}*
出力:
2016年7月1日---
2016年7月2日不在--- OK ---
2016年7月3日不在
2016年7月7日不在
2016年7月6日不在
2016年7月4日---
2016年7月5日不在--- --- ---
を逃しました不在
2016年7月11日逃した
2016年7月10日逃した
2016年7月9日不在2016年7月8日--- --- --- ---
2016年7月12日--- ---
2016年7月13日逃した
2016年7月14日逃した---
2016年7月15日逃した---
2016年7月16日逃した---
不在
2016年7月20日逃した
2016年7月19日逃した
2016年7月18日逃した2016年7月17日は--- --- --- ---
を逃しました不在
2016年7月24日逃した
2016年7月23日逃した
2016年7月22日不在2016年7月21日--- --- --- ---
2016年7月25日--- ---
2016年7月26日逃した
2016年7月27日逃した---
2016年7月28日逃した---
2016年7月29日逃した---
不在2016-07-30 ---逃した
2016-07-31 ---逃した
私はあなたが尋ねようとしているものが得られないので、あなたの質問をさらに詳しく説明してください。 – Janno
最初のwhileループを閉じずに最後を閉じます – Rijin
変更しませんでした –