Anthony がコメントで説明したように、-> ->に移動して、クエリがPHPMyAdmin
まったく機能しているかどうかを確認することをお勧めします。このようにして、それがMySQL エラーかPHP エラーかを区別できます。PHPMyAdmin
SQL
Run Query
UPDATE adverts SET active = 0 WHERE ( enddate < NOW() )
アクティブな '0' を 0 に設定しました。これは、単にフィールドになると信じているためです。Integer
次に、小さいながらも重要な違いがありますenddate
。
それはフィールドですかdate
、それともdatetime
フィールドですか?下記参照:
SELECT NOW(); // You will get 2010-12-09 17:10:18
SELECT CURDATE(); // You will get 2010-12-09
出典: MySQL Curdate() と now()
クエリが機能したかどうかを確認するために使用できaffected_rows()
ますが、基準を満たしていませんでした
$sql = "UPDATE adverts SET active = 0 WHERE ( enddate < NOW() )";
$queried = mysqli_query( $con, $sql );
if ( mysqli_affected_rows( $con ) >= 1 ) {
//We know some rows were effected.
}