리스트페이지에서 코멘트 개수를 표현하게 해놨는데 db에서 코멘트 삭제시 숫자에 반영이 안됩니다.
본문
리스트 페이지에 해당 게시물 코멘트 숫자를 표현하게 해놨는데요
<?php if($list[$i]['comment_cnt'] == "") echo "0"; else echo $list[$i]['comment_cnt'];?>
이런식으로 하니까 댓글이 없을땐 0으로 나오고 하나라도 있으면 숫자로 1부터 잘 표시되더군요
보통 코멘트를 삭제할때 본인이 코멘트를 작성한 게시물에 들어가 삭제 버튼을 누르면 삭제가 되고
각 게시물의 코멘트 개수를 보여주는 곳에서는 코멘트가 차감된게 잘 반영되어 나오는데요
그런데 제가 db 에서 직접 삭제를 하면 그 코멘트의 차감이 반영이 안됩니다.
본인이 작성한 코멘트를 조회하고 목록중에 삭제하고 싶은걸 선택하면
$delete_comment = "delete from 테이블명 wr_id = '".$wr_id."' "; 이 쿼리를 통해 삭제가 되게 해놨습니다.
어떤식으로 수정을 해야 위에 쿼리를 통해서도 코멘트의 개수를 보여주는 곳에서 잘 반영될까요? ㅠ
답변 1
코멘트를 일반적인 방법으로 삭제를 하면 /bbs/delete_comment.php 파일을 거치게 되어 있는데
삭제 쿼리 부분을 보면 코멘트 개수 필드 -1 이 포함되어 있습니다. 참고하셔서 추가해야 합니다.
// 원글의 코멘트 숫자를 감소
sql_query(" update {$write_table} set wr_comment = wr_comment - 1, wr_last = '{$row['wr_last']}' where wr_id = '{$write['wr_parent']}' ");
// 코멘트 숫자 감소
sql_query(" update {$g5['board_table']} set bo_count_comment = bo_count_comment - 1 where bo_table = '{$bo_table}' ");