> 페이지별 카운터 설치하기 > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

> 페이지별 카운터 설치하기 정보

> 페이지별 카운터 설치하기

본문

페이지별 카운터 설치하기 관련 질문입니다.


그누보드는 설치되어 있는 계정이구요.
예를들면 gnuboard4/abcde/abcde.php  라는 임의의 페이지에 페이지별 카운터를 적용시키고 싶은데요..
일단 db에
abcde_visit
abcde_visit_sum
테이블을 생성시켰구요.. (g4_visit 과 g4_visit_sum 을 복사했어요)

위의 링크내용을 참고해서 abcde_visit_insert.inc.php 를 생성했습니다..
그런데 abcde_visit_insert.inc.php 들어가는 내용중에
// 수정할 부분 : 이곳에서 visit_table, visit_sum_table, vsit_ip_cookie를 정의해 주면 됩니다.
$visit_table = $nc[tbl_visit] . "_" . $cb[cb_id];
$visit_sum_table = $nc[tbl_visit] . "_sum_" . $cb[cb_id];
$visit_ip_cookie = "ck_ncclub_" . $cb[cb_id];


결론적으로 이부분만 제대로 수정하면  페이지별 카운터 설치하기 팁을 활용할수 있을거 같더라구요..
토요일,일요일 나름대로 이리저리 변경도 해보고 했는데.. 너무 초보인지라 어찌해야 할지 모르겠네요..
저부분을 어떻게 변경해야 할까요,,, 도움부탁드려봅니다..ㅜㅜ
  • 복사

댓글 전체

$visit_table = "abcde_visit";
$visit_sum_table = "abcde_visit_sum;
$visit_ip_cookie = "님맘대로";

님맘대로 -> 정말 님맘데로..

네 수고하세요..

확실하진 않지만 맞는거 같네요..

10000포인트! 내꺼야!
세션 체크해서 카운트 올릴텐데 99.9% 다른 페이지를 거쳐서 그 페이지를 갈테니 카운터가 안 올라갈 것 같네요.
방문자 ip_list와 카운트 정도만 기록하도록 만들어서 운영하시는 건 어떨까요?
다시 정리해볼게요.

저의 홈페이지 경로/abcde.php 페이지에 다음의 팁을 활용하여 간단하게 카운터를 달려고 합니다.
물론 저는 카페가 아닌 일반페이지에.. 단순히 이미지몇장+텍스트글 몇줄..

http://www.opencode.co.kr/club/club_main.php?cb_id=cb_good#
위 카페 좌측하단처럼 카운터를 달려고 합니다.

http://sir.co.kr/bbs/tb.php/g4_tiptech/12703/dde5ef8724f5fceefa82db347fb7110d
위의 불당님이 올린듯한 활용팁이 유일하므로, 저팁을 이용해서요..
저 팁대로 db에
abcde_visit
abcde_visit_sum
테이블을 생성시켰구요.. (g4_visit 과 g4_visit_sum 을 복사했어요)

위의 링크내용을 참고해서 abcde_visit_insert.inc.php 를 생성해서 include 시켰구요..
저의 홈페이지 경로/abcde.php 하단부에
today <?=number_format($vs[today])?> | total <?=number_format($vs[total])?> 했는데..
그냥 today 0 | total 0  이더라구요..

물론 저의 홈페이지 경로/abcde.php 상단부에 include_once("./_common.php"); 제대로 해줬구요..

3일동안 고생해보니, 결론적으로  abcde_visit_insert.inc.php 들어가는 내용중에

// 수정할 부분 : 이곳에서 visit_table, visit_sum_table, vsit_ip_cookie를 정의해 주면 됩니다.
$visit_table = $nc[tbl_visit] . "_" . $cb[cb_id];
$visit_sum_table = $nc[tbl_visit] . "_sum_" . $cb[cb_id];
$visit_ip_cookie = "ck_ncclub_" . $cb[cb_id];

이부분때문인듯 하다고 생각들더군요..
그런데 위의 소스는 불당카페에 해당하잖아요..
제가 적용하려는 페이지는 카페가아닌 일반페이지구요..
위의 코드부분만 바꿔주면 확 풀릴듯한데 너무 우울하네요..ㅜㅜ
pagecnt라는 테이블을 다음과 같이 만들고
cnt INT()
page VARCHAR(255)
date CHAR(10)
ip_list TEXT()
page와 date에 인덱스 걸어주시고..

<?
$pagecnt = sql_fetch("select cnt, ip_list from `pagecnt` where date='$g4[time_ymd]' and page='$_SERVER[PHP_SELF]'");
if(!strstr("/".$_SERVER[REMOTE_ADDR]."/")) {
  if($pagecnt) sql_query("update `pagecnt` set cnt=cnt+1, ip_list=CONCAT(ip_list, '$_SERVER[REMOTE_ADDR]/') where date='$g4[time_ymd]' and page='$_SERVER[PHP_SELF]");
  else sql_query("insert into `pagecnt` set cnt=1, ip_list='/$_SERVER[REMOTE_ADDR]/', date='$g4[time_ymd]', page='$_SERVER[PHP_SELF]'");
}
$yesterday = date("Y-m-d", strtotime("-1 day"));
$pagecnt2 = sql_fetch("select cnt from `pagecnt` where date='$yesterday' and page='$_SERVER[PHP_SELF]'");
$pagecnt3 = sql_fetch("select SUM(cnt) as sum from `pagecnt` where page='$_SERVER[PHP_SELF]'");
echo "오늘 : " . intval($pagecnt[cnt]) . " 어제 : " . intval($pagecnt2[cnt]) . " 총 : " . intval($pagecnt3[sum]);
?>
오류문구입니다. 참고로 카페24 호스팅이구요..
서버 버전: 4.0.22-log  MySQL client version: 4.0.22 입니다..
아이피주소는 제가 임의로 하트처리 한거에요..
그리고 abcde.php 파일안에는 방해할만한 별다른건 없거든요..

Warning: Wrong parameter count for strstr() in /home/hosting_users/xxxxx/www/abcde/abcde.php on line 38

update `pagecnt` set cnt=cnt+1, ip_list=CONCAT(ip_list, '116.♡.♡.36/') where date='2009-07-07' and page='/abcde/abcde.php

1064 : You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near ''/abcde/abcde.php' at line 1

error file : /abcde/abcde.php
Warning: Wrong parameter count for strstr() in /home/hosting_users/blog79/www/abcde/abcde.php on line 3

1) 카운터는 정상작동 되는듯한데, 새로고침시 계속 올라가더라구요..

2) 그리고 위와같은 오류문구 한줄이 출력되네요..ㅜㅜ

자꾸 귀찮게 하는듯하여 죄송스럽네요..
© SIRSOFT
현재 페이지 제일 처음으로