DateDiff kullanarak gerekli güncellemeleri veritabanı denetimi

0 Cevap php

stackoverflowers hey. im i veritabanındaki tüm kayıt tarihleri ​​belirtilen $ dakika ve $ max değerleri arasında ise yenileme benim veritabanı kontrol etmek yazdım kodu ile birkaç sorunlarınız. sonra kayıt güncellenir değilse. bu şimdiye kadar yapmış budur.

// check database for necessary updates

    $update = mysql_query("SELECT * FROM rent");

    while($row = mysql_fetch_array( $update )) {

    $datetime_lower   = DateTime::createFromFormat('d/m/Y', $min);
    $datetime_upper   = DateTime::createFromFormat('d/m/Y', $max);
    $datetime_compare = DateTime::createFromFormat('d/m/Y g:i a', $row_update['pDate']);

    $diff_lower = $datetime_lower->diff($datetime_compare);
    $diff_upper = $datetime_upper->diff($datetime_compare);

    if ($datetime_lower < $datetime_compare && $datetime_upper > $datetime_compare) {
        // date is between min and max, do nothing
    } else {
        // date is not between min and max, update cell colour
$result = mysql_query("UPDATE rent SET colour='F0F0F0' WHERE $datetime_lower < $pDate && $datetime_upper > $pDate") or die(mysql_error());    
    }
    }

Bunun arkasındaki mantık oldukça rasyonel görünüyor ama ben kod çalıştırmayı deneyin zaman ben hata mesajı alıyorum:

Warning: DateTime::diff() expects parameter 1 to be DateTime, boolean given in C:\xampp\htdocs\keypad\main.php on line 41

Warning: DateTime::diff() expects parameter 1 to be DateTime, boolean given in C:\xampp\htdocs\keypad\main.php on line 42

Herhangi bir fikrin neler oluyor?

0 Cevap