我需要将数据库中的日期与当前时间进行比较,如果日期早于当前时间,则会更改数据库中的某些内容。
$ exp_date是我尝试与当前时间进行比较的日期,数据类型为datetime
这是我到目前为止所做的,尽管我非常有信心它不会工作:
if( NOW() >= $exp_date ) {
$query = "UPDATE orders SET active = '0' WHERE server_id = '$id'";
$result = $connect->query( $query );
}
此外,$ exp_date当前未使用strtotime进行转换。不确定我是否需要这样做。
答案 0 :(得分:0)
为了避免混淆MySQL日期和Unix时间戳等之间的转换,您需要将您的日期作为真实datetime
存储在MySQL中,并且您将在SQL where子句中将其与关键字进行比较current_timestamp
:
$query = "UPDATE orders SET active = '0' WHERE server_id = '$id' AND date_time_field < current_timestamp";
$result = $connect->query( $query );