3

2 つの日付を比較する必要があります。一方の日付が他方よりも大きい場合、SQL が実行されます。これは私のコードです

date_default_timezone_set('Asia/Kuala_Lumpur');
$date = date('Y-m-d G:i:s');
$query = mysql_query("SELECT * FROM package_transaction");
if(mysql_num_rows($query) > 0) {
    while($row = mysql_fetch_array($query)) {           
        $transac_code = $row['transac_code'];
        $duedate = $row['payment_due'];

        if(strtotime($date) > strtotime($duedate))
        {
            mysql_query("UPDATE package_transaction SET `status` = 'cancelled' WHERE `payment_due` = `$duedate` AND `transac_code` = `$transac_code`");

        }

    }
}

しかし、それは機能していません。助けてください

4

2 に答える 2

2

これを試して、

 date("Y-m-d", strtotime($date)) >  date("Y-m-d", strtotime($duedate))
于 2013-02-11T04:46:44.920 に答える
1

strtotime を使用する前に、日付形式を試してみてください。

$duedate = $row['payment_due'];
$duedate = $duedate->format('Y-m-d G:i:s');
于 2013-02-11T04:46:05.220 に答える