일정기간이 지나면 DB 자동삭제 질문입니다. 채택완료
itemformupdate.php
</p>
<p>$sql = "select it_best, it_until from g5_shop_item where it_id = '$it_id' ";</p>
<p>$best = $sql_fetch($sql);</p>
<p>if($best['it_until'] < date('Y-m-d')){</p>
<p> $sql = "update g5_shop_item set it_until = '', it_best = '0' where it_id = '$it_id' ";</p>
<p> sql_query($sql);</p>
<p>}</p>
<p>
안녕하세요.
지금은 상품 등록/수정할때 버튼을 눌러야 저 쿼리가 실행이 됩니다.
그런데 어떠한 클릭없이 it_until로 지정해준 시간이 현재 시간을 지나면 자동으로 실행이 되게 하고싶습니다.
도움 부탁드리겠습니다 ^^
답변 3개
cron tab 또는 index 에 하루에 한번돌수 있도록 처리합니다.
즉 index 에 저 부분을 검수할수 있도록 처리합니다.
저 쿼리가 돌면서 날짜와 돌았는지 여부를 저장하는 log 테이블을 만듭니다.
저 조건문 안에 해당 log 에 대해 select 한후 금일조건이 없다면 돌도록 해줍니다.
그럼 최소 하루에 사이트 방문자가 1명이라도 돌겠죠...
보통 그 부분을 해소하기 위해 @볼피드 님말씀처럼 crontab 을 걸지요...
하지만 서버를 모르신다면 crontab 을 못걸거라 예상해서 두가지를 알려드립니다.
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
crontab을 사용할 수 있는 상황이 아니라면 이런 것도 있습니다.
https://sir.kr/g5_plugin/4328">https://sir.kr/g5_plugin/4328
답변에 대한 댓글 1개
이것도 한번 적용해볼게요^^
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
결국은 crontab 이라는걸 설치해야 하는거군요...