채택완료
댓글은 뺀 순수한 게시 글의 개수를 구하고 싶습니다
안녕하세요.
글 동냥으로 아래와 같은 코드로 게시판의 24시간 이전의 게시 글을 추출하는데요.. 댓글까지 포함해서 표시가 됩니다.
Copy
<?php // 알림장 갯수 추출
$notice = sql_fetch(" SELECT COUNT(1) cnt FROM g5_write_notice WHERE wr_datetime >= DATE_SUB(NOW(), INTERVAL 24 HOUR);");
?>
1.댓글은 뺀 순수한 게시 글의 개수를 구하고 싶습니다.
2.여기서 더 나아가 읽지 않은 게시 글의 개수를 구한다면 어떤 코드를 추가해야 할까요??
고수님들의 도움 청해 봅니다.
감사합니다.
|
답변 5개 / 댓글 8개
채택된 답변
+20 포인트
$notice = sql_fetch(" SELECT COUNT(1) cnt FROM g5_write_notice WHERE wr_datetime >= DATE_SUB(NOW(), INTERVAL 24 HOUR) and wr_is_comment = 0;");
해주시면 될겁니다.
게시물을 등록하면 등록 후 뷰페이지로 이동 하므로 wr_hit = 1로 기본 설정 됩니다
따라서 아래처럼
$notice = sql_fetch(" SELECT COUNT(*) as cnt FROM g5_write_notice WHERE wr_is_comment=0 and wr_datetime >= DATE_SUB(NOW(), INTERVAL 24 HOUR) and wr_hit<2");
다음과 같은 방법도 있으니 참고해 보세요
Copy
<?php
1번.
// 알림장 갯수 추출
$notice = sql_fetch("SELECT COUNT(*) AS cnt FROM g5_write WHERE wr_datetime >= DATE_SUB(NOW(), INTERVAL 24 HOUR);");
2번.
// 읽지 않은 게시글의 개수 추출
$unread = sql_fetch("SELECT COUNT(*) AS cnt FROM g5_write WHERE wr_datetime >= DATE_SUB(NOW(), INTERVAL 24 HOUR) AND wr_notice = 0;");
?>
1. 댓글을 제외한 순수한 게시글의 개수를 구하기 위해서는 g5_write_notice 테이블 대신 g5_write 테이블을 사용해야 할것으로 생각합니다. g5_write 테이블은 댓글을 포함하지 않는 게시글만을 저장하고 있습니다:
2. 읽지 않은 게시글의 개수를 구하려면 알림장이 읽힌 여부를 확인해야 합니다. 가장 간단한 방법은 g5_write 테이블의 wr_notice 필드를 사용하는 것입니다. wr_notice 필드가 0이면 읽지 않은 게시글이고, 1이면 읽은 게시글입니다.
답변에 대한 댓글 3개
[code]
<?php
// 알림장 개수 추출
$sql = "SELECT COUNT(1) AS cnt FROM {$g5['write_notice_table']}
WHERE wr_datetime >= DATE_SUB(NOW(), INTERVAL 24 HOUR)
AND wr_is_comment = 0 AND wr_hit = 0
AND wr_mb_id = '{$member['mb_id']}'";
$notice = sql_fetch($sql);
?>
[/code]
위와 같이 해 볼 수 있을 것 같습니다. 다만, 실시간으로 알림장이 읽히는 경우에는 정확한 결과를 얻지 못할 수 있습니다. 참고해 보세요
<?php
// 알림장 개수 추출
$sql = "SELECT COUNT(1) AS cnt FROM {$g5['write_notice_table']}
WHERE wr_datetime >= DATE_SUB(NOW(), INTERVAL 24 HOUR)
AND wr_is_comment = 0 AND wr_hit = 0
AND wr_mb_id = '{$member['mb_id']}'";
$notice = sql_fetch($sql);
?>
[/code]
위와 같이 해 볼 수 있을 것 같습니다. 다만, 실시간으로 알림장이 읽히는 경우에는 정확한 결과를 얻지 못할 수 있습니다. 참고해 보세요
답변에 대한 댓글 1개
<?php // 알림장 개수 추출
$notice = sql_fetch(" SELECT COUNT(1) cnt FROM g5_write_notice WHERE wr_datetime >= DATE_SUB(NOW(), INTERVAL 24 HOUR) and wr_is_comment = 0 and wr_hit=0");
?>
이렇게 적용했는데 안 되네요..다른 회원이 읽는 순간 wr_hit >= 1 이 되니까 출력이 되지 않았던 것 같습니다...
정확한 의도는 로인인한 회원이 읽지 않은 상태의 자신의 모니터에 나타나는 개수가 필요한 것입니다.. 아는 게 없다 보니 질문도 정확하게 못하게 되네요..ㅜㅜ
$notice = sql_fetch(" SELECT COUNT(1) cnt FROM g5_write_notice WHERE wr_datetime >= DATE_SUB(NOW(), INTERVAL 24 HOUR) and wr_is_comment = 0 and wr_hit=0");
?>
이렇게 적용했는데 안 되네요..다른 회원이 읽는 순간 wr_hit >= 1 이 되니까 출력이 되지 않았던 것 같습니다...
정확한 의도는 로인인한 회원이 읽지 않은 상태의 자신의 모니터에 나타나는 개수가 필요한 것입니다.. 아는 게 없다 보니 질문도 정확하게 못하게 되네요..ㅜㅜ
답변을 작성하려면 로그인이 필요합니다.