게시판 읽지 않은 게시글 수 구하는 방법 문의 드립니다.
본문
안녕하세요..고수님들
아래 게시판 "free" 의 전체 개시글 수 중에서 읽지 않은 글의 갯수를 추출하고 싶습니다.
고수님들의 도움 부탁드립니다.
<?php
$row = sql_fetch(" select bo_count_write from {$g5['board_table']} where bo_table = 'free' ");
echo $row['bo_count_write'];
?>
감사합니다.
답변 3
{$g5['board_table']}에서는 안 되고
select count(*) from g5_write_free where wr_is_comment=0 and wr_hit=1
해야 될 것 같네요.
댓글이아닌 글1번 부모의 글이 아닌 글 2번
쉽게말해 1번게시 2번댓글 물론 읽지아니한글이겠죠
1. wr_is_comment = 0
2. wr_parent = 0
다음은 아닌 글만 추출하는 것중에 한가지 조건.
wr_id not in (select distinct wr_parent from {$g5['write_table']} where wr_is_comment = 1)
다음은 게시판 프리에서 추출.
bo_table = 'free'
최근에 읽은 글 이후의 글만 추출하고자할때
wr_datetime > '".date('Y-m-d H:i:s', $read_latest)."'
이상 도움 되었으면 좋겠네요 화이팅~!
다음과 같은 방법도 있으니 참고하시면 될 것 같습니다.
1. g5_write 테이블에 wr_unread와 같은 필드를 추가 이 필드는 읽지 않은 글의 개수를 저장할 목적으로 사용되며, 필드의 타입은 정수형(INT)이어야 함.
2. 게시글을 읽을 때마다 wr_unread 필드를 갱신하고, 게시글이 읽힐 때마다 wr_unread 필드의 값을 1씩 감소시키거나, 읽은 상태를 표시하기 위해 0으로 설정
3. 읽지 않은 글의 개수를 추출하는 코드를 작성
<?php
$row = sql_fetch("SELECT COUNT(*) AS unread_count FROM {$g5['write_table']} WHERE bo_table = 'free' AND wr_unread > 0");
$unread_count = $row['unread_count'];
echo $unread_count;
?>
즉 g5_write 테이블에서 'free' 게시판에 속한 읽지 않은 글의 개수를 추출하며, wr_unread 필드가 0보다 큰 경우에만 읽지 않은 글로 간주하고 개수를 계산함.
참고하셔서 원하시는 방식으로 로직을 구현하시면 될듯 합니다.
!-->