웹마스터 팁
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
제로 카운터 ip 체크형에서 쿠키 체크 형으로 바꾸기
2004.01.27 08:30
제로카운터는 기본적으로 IP로 중복을 체크해서 오늘 방문한 사람을 구합니다.
하지만 IP체크는 서버에 부하가 많이 가게 됨으로 쿠키 체크로 바꾸면 서버에 부하를 줄일 수 있습니다.
제로카운터의 zerocount.php3 을 엽니다.
먼저 ip를 구하는 부분과 ip를 저장하는 부분을 주석 처리 해주어야 합니다.
21번째 정도의 줄에 보시면
// 지금 아이피로 접속한 사람이 오늘 처음 온 사람인지 검사
$check=mysql_fetch_array(mysql_query("select count(*) from counter_ip where date>=$today and date<$tomorrow and ip='$user_ip'",$connect));
을 주석 처리 해줍니다.
// 지금 아이피로 접속한 사람이 오늘 처음 온 사람인지 검사
// $check=mysql_fetch_array(mysql_query("select count(*) from counter_ip where date>=$today and date<$tomorrow and ip='$user_ip'",$connect));
30번째 정도의 줄에 보시면
// 오늘 시간대별 ip 입력
mysql_query("insert into counter_ip (date, ip) values ('$time','$user_ip')",$connect);
을 주석 처리 해줍니다.
// 오늘 시간대별 ip 입력
// mysql_query("insert into counter_ip (date, ip) values ('$time','$user_ip')",$connect);
그러신 후
22번째 줄을 보시면
아까 주석 처리한
// 지금 아이피로 접속한 사람이 오늘 처음 온 사람인지 검사
// $check=mysql_fetch_array(mysql_query("select count(*) from counter_ip where date>=$today and date<$tomorrow and ip='$user_ip'",$connect));
이 있습니다.
여기 아래에 다음의 내용을 넣어 줍니다.
if($HTTP_COOKIE_VARS[zerocount]){ // 저장된 쿠키가 있을때
if($HTTP_COOKIE_VARS[zerocount]<time()-(86400*1)){ // 하루 이전 일때 86400 은 하루
$check[0] = 0;
// 쿠키 새로 굽기
setcookie(zerocount,time(),time()+86400,"/");
}else{ // 하루가 안 지났을때
$check[0] = 1;
}
}else{ // 저장된 쿠키가 없을때
$check[0] = 0;
// 쿠키 굽기
setcookie(zerocount,time(),time()+86400,"/");
}
* DeX™님에 의해서 게시물 이동되었습니다 (2004-01-27 09:42)
하지만 IP체크는 서버에 부하가 많이 가게 됨으로 쿠키 체크로 바꾸면 서버에 부하를 줄일 수 있습니다.
제로카운터의 zerocount.php3 을 엽니다.
먼저 ip를 구하는 부분과 ip를 저장하는 부분을 주석 처리 해주어야 합니다.
21번째 정도의 줄에 보시면
// 지금 아이피로 접속한 사람이 오늘 처음 온 사람인지 검사
$check=mysql_fetch_array(mysql_query("select count(*) from counter_ip where date>=$today and date<$tomorrow and ip='$user_ip'",$connect));
을 주석 처리 해줍니다.
// 지금 아이피로 접속한 사람이 오늘 처음 온 사람인지 검사
// $check=mysql_fetch_array(mysql_query("select count(*) from counter_ip where date>=$today and date<$tomorrow and ip='$user_ip'",$connect));
30번째 정도의 줄에 보시면
// 오늘 시간대별 ip 입력
mysql_query("insert into counter_ip (date, ip) values ('$time','$user_ip')",$connect);
을 주석 처리 해줍니다.
// 오늘 시간대별 ip 입력
// mysql_query("insert into counter_ip (date, ip) values ('$time','$user_ip')",$connect);
그러신 후
22번째 줄을 보시면
아까 주석 처리한
// 지금 아이피로 접속한 사람이 오늘 처음 온 사람인지 검사
// $check=mysql_fetch_array(mysql_query("select count(*) from counter_ip where date>=$today and date<$tomorrow and ip='$user_ip'",$connect));
이 있습니다.
여기 아래에 다음의 내용을 넣어 줍니다.
if($HTTP_COOKIE_VARS[zerocount]){ // 저장된 쿠키가 있을때
if($HTTP_COOKIE_VARS[zerocount]<time()-(86400*1)){ // 하루 이전 일때 86400 은 하루
$check[0] = 0;
// 쿠키 새로 굽기
setcookie(zerocount,time(),time()+86400,"/");
}else{ // 하루가 안 지났을때
$check[0] = 1;
}
}else{ // 저장된 쿠키가 없을때
$check[0] = 0;
// 쿠키 굽기
setcookie(zerocount,time(),time()+86400,"/");
}
* DeX™님에 의해서 게시물 이동되었습니다 (2004-01-27 09:42)
댓글 8
-
이근우
2005.11.01 20:58
-
SeePaGae
2004.01.27 14:46
쿠키보다는.. Session 으로 할수 있을까요? -
정재원
2004.01.27 14:54
세션으로 사용하면 불필요한 세션 정보가 서버에 쌓이게 됍니다.
또 제로보드의 세션 아이디 session_id() 와 겹칠 수 있구요... -
버찌
2004.01.29 16:16
이 팁에 추천을 드립니다.
이제 카페24에서 제로카운터의 사용이 다시 가능해지겠네요 ^^ -
박재환
2004.02.09 13:19
질문있습니다...
저는 제로보드에서 디폴트로 제공하는 카운터를 안쓰고 여기 에서 다운 받은 Art_counter라는 것을 사용
하는데 위와 같은 소스를 아무리 찾아봐도 없네요... 어떻하죠?
저도 아이피 보다는 쿠키로 체크하는게 나을것 같은데 하는 방법을 몰라...
제발 좀 가르쳐 주세요... 질문하면 답을 얻기가 하늘에 별따기 보다도 더 어려운 현실(nzeo.com)... -
teslaMINT
2004.02.11 21:15
제로보드는 현재 공식적으로 통계기능을 제공하지 않습니다. -
요술왕자
2004.04.03 03:21
이줄에서 에러가 나네요...
// 쿠키 굽기
setcookie(zerocount,time(),time()+86400,"/"); -
susia
2007.07.09 12:39
위의 소스를 적용해보았고, 저 역시 마찬가지로
// 쿠키 굽기
setcookie(zerocount,time(),time()+86400,"/");
여기서 에러가 나서 이 줄을 지웠습니다.
그러고나서 보니, IP로 체크할때보다 급격하게 카운터수가 올라가고 있네요.
쿠키생성이 정상적으로 이루어지지 않는것 같은데,
아이프레임으로 불러와서 쿠키가 적용이 되지 않는 건가요?
해결할 방법은 없는건가요.... ㅠ.ㅠ
제목 | 글쓴이 | 날짜 |
---|---|---|
[초간단 자바스크립트!] 튀어나오는 글자..-_-;; | ∑Ztxy | 2004.01.18 |
[초간단 자바스크립트!] 이미지 갤러리 [2] | ∑Ztxy | 2004.01.18 |
[초간단 자바스크립트!] 색깔바뀌는 메뉴 [3] | ∑Ztxy | 2004.01.19 |
전체화면에서 스크롤바 없애기 [7] | 이태식 | 2004.01.23 |
[초간단 자바스크립트!] 자바로 로그인폼 만들기 [3] | ∑Ztxy | 2004.01.26 |
인풋(코멘트)창 크기 조정 | 정재원 | 2004.01.27 |
[초간단 자바스크립트!] 자바로 홈페이지를부드럽게!!(1) [4] | ∑Ztxy | 2004.01.27 |
세이클럽 스크롤바 [7] | 세강 :D | 2004.02.01 |
앞,뒤,새로고침 만들기 [2] | piasol | 2004.02.01 |
주소창에 아이콘을 달자(다음,엠파스처럼) [3] | piasol | 2004.02.01 |
Select 태그 관련 스크립트 [12] | Zective | 2004.02.04 |
[초간단 자바스크립트!] 플래시 FullSize로 보여주기 [4] | ∑Ztxy | 2004.02.05 |
페이지 내에 주소창 달기 [1] | piasol | 2004.02.09 |
BGM Player (배경 음악) [17] | 장진석 | 2004.02.16 |
XML+JS 연동 다중셀렉트 | 투헤븐 | 2004.02.16 |
벅스뮤직 플레이어 스크립트 추출기 [4] | 이녀석 | 2004.02.16 |
우뚜같은 포워딩 페이지에서 프레임 깨기.(프레임 없애기) [17] | 김영성 | 2004.02.19 |
회원 가입 페이지 이젠 끝이다 [5] | 윌 | 2004.03.03 |
벅스뮤직 음악듣기 및 시작 정지 버튼 넣기(기타 음악파일도...) [3] | 카멜롯™ | 2004.03.04 |
방문자 OS보여주기 [5] | 구조반 | 2004.03.05 |
setcookie(zerocount,time(),time()+86400,"/");
이부분을 지우니 에러가 안생기네요..