[G4] 한번 읽은글은 동일ID에서는 카운트를 증가시키지 않음 > 기술자료 | 해피정닷컴

[G4] 한번 읽은글은 동일ID에서는 카운트를 증가시키지 않음 > 기술자료

본문 바로가기

사이트 내 전체검색

[G4] 한번 읽은글은 동일ID에서는 카운트를 증가시키지 않음 > 기술자료

그누보드 [G4] 한번 읽은글은 동일ID에서는 카운트를 증가시키지 않음

페이지 정보


본문

일반적으로 조회수 늘리기 팁이나 문의는 많지만, 조회수 늘지 않기를 원하는 경우는 없죠.
아래 팁은 조회수 늘리지 않기 위한 팁입니다.

아이디당 게시글을 오직 한번만 조회수를 늘립니다.
팁 내용중 오류나 이상한것이 있으면 알려주세요. 일단 필요해서 만들기는 했는데, 더 쉬운 방법이 있을지 궁굼하네요.

그누보드는 세션을 이용해서 조회수 증가를 막지만, 브라우저를 종료하면 다시 조회수가 올라간다는 점에서 제가 원하는 기능에 부족하더라구요.


1. 읽은것을 기록할 테이블 생성
CREATE TABLE IF NOT EXISTS `g4_board_hit` (
  `bh_idx` int(11) NOT NULL auto_increment,
  `bo_table` varchar(50) NOT NULL,
  `wr_id` int(11) NOT NULL,
  `mb_id` varchar(50) NOT NULL,
  `bh_datetime` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
  PRIMARY KEY (`bh_id`),
  KEY `mb_id` (`mb_id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8;


2. 그누보드4 / bbs / board.php  119~123줄

    // 한번 읽은글은 브라우저를 닫기전까지는 카운트를 증가시키지 않음
    $ss_name = "ss_view_{$bo_table}_{$wr_id}";
    if (!get_session($ss_name))
    {
        sql_query(" update $write_table set wr_hit = wr_hit + 1 where wr_id = '$wr_id' ");

를 아래와 같이 변경합니다.

    // 한번 읽은글은 브라우저를 닫기전까지는 카운트를 증가시키지 않음
    $ss_name = "ss_view_{$bo_table}_{$wr_id}";
    if (!get_session($ss_name))
    {
        if ($bo_table == "게시판이름") { // 읽기를 제어할 게시판 이름 / 읽기권한은 회원전용으로
            $sql = " select count(*) as cnt from g4_board_hit where bo_table = '". $bo_table ."' and wr_id = '". $wr_id ."' and mb_id = '". $member['mb_id'] ."' ";
            $row = sql_fetch($sql);
            if (!$row[cnt]) { // 처음 읽을때
                sql_query(" insert into g4_board_hit (bo_table, wr_id, mb_id, wr_datetime) values ('". $bo_table ."', '". $wr_id ."', '". $member['mb_id'] ."', '". date("Y-m-d H:i:s") ."')");
                sql_query(" update $write_table set wr_hit = wr_hit + 1 where wr_id = '$wr_id' ");
            } else { // 읽은기록이 있을때
            }
        } else {
            sql_query(" update $write_table set wr_hit = wr_hit + 1 where wr_id = '$wr_id' ");
        }

댓글목록

등록된 댓글이 없습니다.


Total 459건 12 페이지
  • RSS
기술자료 목록
239
그누보드   11454  2015-06-25 18:15  
238
그누보드   13872  2015-06-16 18:05 ~ 2015-06-25 00:00  
237
그누보드   23479  2015-06-14 11:48 ~ 2016-12-05 00:00  
236
그누보드   13410  2015-05-19 01:43 ~ 2015-05-19 00:00  
열람
그누보드   11240  2015-05-19 01:39 ~ 2015-05-19 00:00  
234
그누보드   12599  2015-04-20 20:50  
233
그누보드   12634  2015-04-01 12:03  
232
그누보드   14668  2015-03-31 17:48  
231
그누보드   13810  2015-03-20 20:58 ~ 2018-10-17 03:51  
230
그누보드   13979  2015-03-12 17:06  
229
그누보드   17126  2015-05-10 19:17 ~ 2018-11-15 07:37  
228
그누보드   21777  2015-02-22 18:06 ~ 2019-09-19 23:16  
227
그누보드   13119  2015-01-12 22:59  
226
그누보드   13975  2015-01-02 14:43 ~ 2017-11-17 05:34  
225
그누보드   12430  2015-01-02 14:39 ~ 2015-01-09 00:00  
224
그누보드   10526  2015-01-02 11:41 ~ 2015-01-13 00:00  
223
그누보드   10230  2015-01-02 11:33 ~ 2015-01-13 00:00  
222
그누보드   20604  2014-12-18 17:24 ~ 2024-01-30 14:30  
221
그누보드   12006  2014-12-12 13:15 ~ 2020-10-17 06:36  
220
그누보드   32680  2014-10-29 12:27 ~ 2020-10-21 18:52  

검색

해피정닷컴 정보

회사소개 회사연혁 협력사 오시는길 서비스 이용약관 개인정보 처리방침

회사명: 해피정닷컴   대표: 정창용   전화: 070-7600-3500   팩스: 042-670-8272
주소: (34368) 대전시 대덕구 대화로 160 대전산업용재유통단지 1동 222호
개인정보보호책임자: 정창용   사업자번호: 119-05-36414
통신판매업신고: 제2024-대전대덕-0405호 [사업자등록확인]  
Copyright 2001~2024 해피정닷컴. All Rights Reserved.