테스트 사이트 - 개발 중인 베타 버전입니다

일정 조건하에 게시글을 자동 삭제하려고 합니다 채택완료

janedoe 7년 전 조회 3,066

조건은 특정 게시판에 댓글이 달린 후 5일이 지난 후에 자동삭제인데요 

그리고 특정게시판에 댓글은 관리자만 쓸 수 있습니다. 그러니 관리자 답변이 달린 후 5일 후 자동삭제가 되게 하려고 합니다 

아래와 같이 sql문을 작성해서 common.php 에 인크루드 했습니다. 

그런데 역시 제가 초보이다 보니 작동이 안되네요. 

아마 sql 문을 잘못작성한 것같습니다 

제가 작성한 sql 좀 봐주세요 . 

부탁드립니다 

 

sql_query(" delete from g5_write_ask where wr_datetime < date_add(now(), interval - 5 day) and wr_is_comment = 1");    $row = sql_fetch(" select count(*) as cnt from g5_write_ask where (1) "); $countwrite = $row['cnt']; sql_query(" update g5_board set bo_count_write = '{$countwrite}' where bo_table = 'ask' ");   sql_query(" delete from g5_board_new where bn_datetime < date_add(now(), interval - 5 day) and bo_table = 'ask' and wr_is_comment = 1");

 ?>

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

해피정
7년 전
로그인 후 평가할 수 있습니다

답변에 대한 댓글 3개

j
janedoe
7년 전
네 위주소를 보고 만든 sql문입니다 . 그런데 내공이부족해서 작동이 되지 않네요
해피정
7년 전
흐음.. 그런가요? 테스트 해서 잘 삭제되는거 확인했던 소스인데...
최신글 테이블의 내용도 삭제되도록 코드는 추가했습니다
j
janedoe
7년 전
제가 뭔가 잘못한 부분이 있겠지요...

댓글을 작성하려면 로그인이 필요합니다.

웹아이
7년 전

sql_query(" delete from g5_board_new where bn_datetime < date_add(now(), interval - 5 day) and bo_table = 'ask' and wr_is_comment = 1");

 

g5_board_new 테이블에 wr_is_comment 필드가 있으신가요????

기본 그누보드에는 없는거 같아서요...

 

sql_query(" delete from g5_board_new where bn_datetime < date_add(now(), interval - 5 day) and bo_table = 'ask' and wr_id != wr_parent");

 

이렇게 해야하지 않을까 싶습니다.^^

로그인 후 평가할 수 있습니다

답변에 대한 댓글 5개

j
janedoe
7년 전
mysql접속해서 보니까 댓글이 달린 글에 wr_is_comment = 1 라는 변수가 달리지 않은글에 wr_is_comment=0 이 지정되어있어서 그렇게 썼는데 제가 잘못한 건가봐요. 하지만 조언하신대로 sql 문을 바꾸어 봐도 역시 삭제는 되지 않네요...
웹아이
7년 전
g5_write_ask, g5_board_new 둘다 삭제가 안되시나요??
j
janedoe
7년 전
네 모두 삭제가 되지 않네요
혹시나 싶어서
<?php

sql_query(" delete from g5_write_ask where wr_datetime < date_add(now(), interval - 5 day) and wr_is_comment = 1");
?>

이 구문만 남겨서 테스트 해봤는데 역시 되지 않았고요 . 조건문이 잘못된건가 싶어서

<?php

sql_query(" delete from g5_write_ask where wr_is_comment = 1");
?>이렇게만 남겨서 테스트 해봐도 삭제가 되지 않았습니다.. 저 구문을 common.php 에 인크루드 한 게 잘못된걸까 싶어서 해당 게시판 스킨list.skin.php 에 복사해서 넣어봤는데 역시 새로고침을 아무리 해도 삭제가 안되더라고요.....
웹아이
7년 전
쿼리문을 mysql에 직접 실행해도 삭제가 안되시나요?
쿼리문은 이상없어보이는데요.
j
janedoe
7년 전
네 .. 그렇네요 뭐가 문제인지 도무지 잘 모르겠네요..;;

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인