0

こんにちは私はプロジェクトに取り組んでいて、私の心は空白を描いているので、私を助けるためにそれを世界に出しました。

私はこのようなMySQLデータベースを持っていますアイテムの開始日、通知日は終了から1週間後、有効期限が切れた終了日です

+table+
|id|   start  |  notice |   end    |status|
|01|2013-09-01|2013-9-23|2013-10-01|Active|
....

PHP

$query = mysql_query("SELECT *, 
DATE_FORMAT(`start_date`,'%d-%m-%Y') as fmt_start_date,
DATE_FORMAT(`notice_date`,'%d-%m-%Y') as fmt_notice_date,
DATE_FORMAT(`end_date`,'%d-%m-%Y') as fmt_end_date 
FROM `$table` ORDER BY `fmt_start_date` ASC "); 

while ($row = mysql_fetch_array($query)) {
    $start = strtotime($row["fmt_start_date"]);
    $notice = strtotime($row["fmt_notice_date"]);
    $end = strtotime($row["fmt_end_date"]);
    $current = strtotime(date('d-m-Y'));

    if( $notice >= $current && $end <  $current){
        mysql_query("UPDATE `$table` SET  `status` =  'Notice' WHERE  `id` ='{$row["id"]}';"); 
    } elseif ( $end <= $current ){
        mysql_query("UPDATE `$table` SET  `status` =  'Expire' WHERE  `id` ='{$row["id"]}';");
    } else {
        mysql_query("UPDATE `$table` SET  `status` =  'Active' WHERE  `id` ='{$row["id"]}';");
    }
}

私がやりたいのは、日付が経過するとステータスが変化するため、通知の週にステータスが通知に変更され、終了を過ぎたときに期限切れになり、これらの日付が経過していない場合はそのままになります。アクティブ。

私はそれをどのようにやりたいかを知っていますが、私の心はこれのための方法に空白を描いています. インターネットを助けてください。

4

2 に答える 2