이 두 가지를 모두 관리 할 수있는 두 가지 옵션이 있습니다.
광고에 만료 시간을 저장하고 만료> NOW(); 어떤 쿼리에서이 종류의 '활성'필드에 대한 요구 사항을 부정 (광고를 선택합니다.
이를 관리하는 이벤트를 사용합니다.
방법 1 광고를 정리하는 '일부 관리자가 필요할 수 있습니다 '을 주기적으로 사용합니다.
방법 2 - 아직 프로 시저에서 이벤트를 만들 수 없지만 (내가 마지막으로 확인한 경우) 다른 체크와 무언가를 실행하지 않고 이러한 종류의 관리 업무를 설정하고 잊어 버릴 수 있습니다.
각 이벤트에는 고유 한 이름이 있어야합니다.
<?php
$qry = "insert into ads values ('x', 'y', 'z');";
/* db execute qry (pdo or what ever) */
$adId = // retriev a unique reference for ad.
$days = $_POST['expire'] == 16 ? 16 : 8;
$qry = "CREATE EVENT updateAd_".$adId."
ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL ".$days." DAY
ON COMPLETION NOT PRESERVE
DO
update ads set active = 'false' where ad_id = ".$adId.";";
// db execute qry (pdo or what ever);
?>
이벤트는 MySQL 데이터베이스에 저장되어 있지 자신이 구현하는 일부 관리자 수준의 권한이 필요하므로 : 그렇지 않으면 당신은
예 ... 경우 이미 지정된 죽일 것이다.
감사합니다 이안! 그것은 완벽하게 작동했습니다! –