균

[그누] 접속할 때마다 카운터 하기

브라우저를 새로 열 때마다 카운터가 증가하도록 제가 사용하고 있는 방법 입니다
관리자 ip를 검사하여 관리자 접속도 카운터 하지않도록 하고 있습니다만
이 부분은 입맛에 맞게 수정 하면 됩니다

1. phpmyadmin으로 g4_visit 테이블 수정
vi_ip, vi_date 필드 : unique --> index

visit table의 vi_ip, vi_date가 unique로 설정되어 있어 같은 ip, 같은 날짜로는 두번 기록 되지 않으므로 vi_ip와 vi_date 필드를 index로 변경 하면 접속시 마다 기록 됨

2. common.php 404행 수정 - 정상적인 접속이 아닌 것과 관리자는 접속기록을 남기지 않음

// 방문자수의 접속을 남김
include_once("$g4[path]/lib/visit.lib.php");
$browser=get_brow($_SERVER[HTTP_USER_AGENT]);
//$admin_ip="101.101.101"; //관리자 컴퓨터 IP
//if($browser !='Robot' && $browser !='기타' && !ereg($admin_ip,$_SERVER[REMOTE_ADDR]) ) 
if($browser !='Robot' && $browser !='기타' && !$is_admin ) 
include_once("{$g4['bbs_path']}/visit_insert.inc.php");

3. visit_insert.inc.php 5,6행 수정
 
if (get_cookie('ck_visit_ip') != $_SERVER['REMOTE_ADDR']) {
set_cookie('ck_visit_ip', $_SERVER['REMOTE_ADDR'], 0); // 86400 :하루동안 저장, 0:브라우저 열린동안만  
|

댓글 7개

감사합니다~!
if($browser !='Robot' && $browser !='기타' && !ereg($admin_ip,$_SERVER[REMOTE_ADDR])

마지막에 )를 넣으셔서 구문을 닫아주셔야 합니다..

이것때문에 한참 고민하다가 바다로님이 갈쳐주셔서 해결했습니다..ㅎㅎ
관리자 컴퓨터 IP 제외하기 스킨기능을 만들어 보았습니다.

http://sir.co.kr/bbs/board.php?bo_table=g4_skin&wr_id=82306&sca=&sfl=mb_id%2C1&stx=goodboyx

그리고

set_cookie('ck_visit_ip', $_SERVER['REMOTE_ADDR'], 0); // 86400 :하루동안 저장, 0:브라우저 열린동안만 0 으로 하면 제대로 작동이 안되는뎅 저만 그런건지 모르겠네요 ^^;;
감사...^^
이거 unique로 수정하고 나면
다시 index로 수정이 안되네요..ㅠㅠ
아시는분 없나요??
ALTER TABLE `g4_visit` ADD INDEX ( `vi_ip` );

ALTER TABLE `g4_visit` ADD UNIQUE (`vi_ip`);
댓글을 작성하시려면 로그인이 필요합니다.

그누보드4와 관련된 팁을 여러분들과 함께 공유하세요. 나누면 즐거움이 커집니다.

+
제목 글쓴이 날짜 조회
08-09-01 조회 6,621
08-09-01 조회 3,827
08-09-01 조회 4,693
08-08-28 조회 2,920
08-08-26 조회 7,025
08-08-25 조회 5,089
08-08-25 조회 2,745
08-08-23 조회 5,627
08-08-22 조회 4,206
08-08-22 조회 6,047
08-08-19 조회 7,011
08-08-18 조회 1.7만
08-08-17 조회 1만
08-08-15 조회 2,766
08-08-11 조회 7,105
08-08-11 조회 2,888
08-08-08 조회 3,598
08-08-07 조회 3,430
08-08-05 조회 4,924
08-07-30 조회 2,986