웹마스터 팁
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로 체크할때보다 급격하게 카운터수가 올라가고 있네요.
쿠키생성이 정상적으로 이루어지지 않는것 같은데,
아이프레임으로 불러와서 쿠키가 적용이 되지 않는 건가요?
해결할 방법은 없는건가요.... ㅠ.ㅠ
제목 | 글쓴이 | 날짜 |
---|---|---|
[초허접기초] 하드디스크 용량을 구해보자..!! [13] | SeePaGae | 2004.01.24 |
제로 카운터 ip 체크형에서 쿠키 체크 형으로 바꾸기 [8] | 정재원 | 2004.01.27 |
이미지 업로드시 자동으로 섬네일 이미지 만들어 주기 [2] | 장정식 | 2004.02.02 |
많은 txt파일 db에 한번에 저장시키기 -_-;;(별 내용없으나 필요하신분은 보세요) [1] | 추천대화상대 | 2004.02.11 |
cd키랑 비슷한거 만들기 -_-;; [12] | 추천대화상대 | 2004.02.11 |
간단한 랜덤 게시물 구하는 간단한 소스입니다. [5] | NS | 2004.02.12 |
[허접팀]랜덤 이미지 불러오기( +_+)/" [9] | 『처니리♂』 | 2004.02.12 |
한꼬마의 제로보드 활용법 (게시물 추출하기) [4] | 한꼬마 | 2004.02.17 |
HTML,이미지,동영상 파일 열리지 않고 다운로드되도록 만들기(수정) [21] | TheMics | 2004.02.19 |
여러 DB에서 최근 게시물 추출하기 위한 소스 입니다. [6] | NS | 2004.02.21 |
폴더에 사진올려놓고 리스트자동으로 만들기 [7] | 김인기 | 2004.02.22 |
[허접팁]윈엠프 리스트창에 방송정보 보여주기;;[수정]
[5]
![]() | 『처니리♂』 | 2004.02.29 |
초간단 인라이브 방송여부 알아보기 프로그램. [12] | 심심타 | 2004.03.01 |
함수] Exec 함수에 대한 간략한 설명 [3] | NS | 2004.03.05 |
PHP와 MYSQL연동 관련함수 [3] | 백무혼 | 2004.03.07 |
드디어 PHP 5 RC1 발표(04.03.18) [8] | 써니루루☆ | 2004.03.19 |
배열의 정렬에 대한 약간의 강의 [2] | ♡다솜지기♡ | 2004.04.02 |
[국에 밥말아먹는 PHP 프로그래밍] 1-1. PHP는 뭐하는 밥이냐?! (상) (Build 2) [17] | 9000㎒ | 2004.04.18 |
트랙백 구현하기 - 1. 트랙백이란 무엇인가?
[4]
![]() | TheMics | 2004.04.18 |
엔지오 채널 따라하기 -_-& www자동 붙이기 [6] | 박종찬 | 2004.04.18 |
setcookie(zerocount,time(),time()+86400,"/");
이부분을 지우니 에러가 안생기네요..