간단한 페이지별 카운터 > 그누4 팁자료실

그누4 팁자료실

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

간단한 페이지별 카운터 정보

간단한 페이지별 카운터

본문

pagecnt라는 테이블을 다음과 같이 만들고
cnt INT()
page VARCHAR(255)
date DATE()
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($pagecnt[ip_list], "/".$_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]);
?>

Query string이 들어간 페이지라면(주소 뒤에 물음표가 붙고 변수값이 있는 경우)
$_SERVER[REMOTE_ADDR] 대신 $_SERVER[REQUEST_URI]를 사용하면 됩니다.
추천
8

댓글 7개

첨에 불당님거로 시도하다가 잘안되서 패스~
초보인 저같은 경우는 이소스가 적용해보니 더 간단하더군요..
정말 유용하게 사용하고 있습니다^^ ㅊㅊ~!!
좋은 팁인거 같은데요..

--------------------------------------
pagecnt라는 테이블을 다음과 같이 만들고
cnt INT()
page VARCHAR(255)
date CHAR(10)
ip_list TEXT()
page와 date에 인덱스 걸어주시고..
---------------------------------------

윗 부분을 이해못하는 초짜라...

phpMyAdmin의 sql에 넣나요??
네이버,다음 검색사이트에 'db테이블만들기', 'db테이블만드는방법' 등으로 검색해보세요.
찡기스님이 질문하신거는 스스로 공부하셔야 할겁니다.
자주는 아니더라도 사용해야할때가 가끔있거든요.
저도 초보인지라 꼭 저를 보는듯하여 댓글달고 갑니다.. 힘내시길..^^
전체 3,313 |RSS
그누4 팁자료실 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT