include("config.php");
if($cookie_time==0){
SetCookie("Zeus_cnt","Zeus_value",$cookie_time);
}
if($cookie_time > 0){
SetCookie("Zeus_cnt","Zeus_value",time()+$cookie_time);
}
/******************************* ZeusCounter v 3.5 *******************************
// 만든이 : 김정수 NicName: Zeus
// 제작일 : 2000/11/23
// 홈페이지 : http://pdclub.pe.kr
// 이메일 주소 : wzzangw@hotmail.com
******************************** ZeusCounter v 3.5 ********************************/
/**************************************************************************************
이 카운터를 웹페이지로 사용할 경우 아래의 부분을 직접 편집하여 주세여.
중요사항 [ echo " ...태그 편집할 영역.." ] 태그편집할영역에는 큰따옴표(")를 사용하시면 안됩니다.
사용해야 할경우에는 \" 과 같이 \을 붙여 사용하시기 바랍니다.
PHP를 모르시는 분은 IFRAME을 이용하여 페이지에 삽입하시기 바랍니다.
***************************************************************************************/
function html_head(){
global $win_title,$textcolor,$bgcolor,$refresh,$PHP_SELF,$background;
echo "
$win_title
\n";
echo "";
}
function html_foot(){
echo "";
print "\n\n";
print "";
}
/*--------------------- 웹페이지 편집 끝 ---------------------*/
/*가로 모드*/
function horizontally_mode(){
global $field_tot,$field_tod,$field_yes,$field_max,$field_now,$c_tot,$c_tod,$c_yes,$c_max,$total_user;
global $td_tot_color,$td_tod_color,$td_yes_color,$td_max_color,$td_now_color,$ft_tod,$ft_now;
global $img,$use,$align,$td_height,$PHP_SELF;
echo "
";
if($use[3]=='Y'){
echo "
$field_tot : $c_tot
| ";
}
if($use[0]=='Y'){
echo "
$field_tod : $c_tod
| ";
}
if($use[1]=='Y'){
echo "
$field_yes : $c_yes
| ";
}
if($use[2]=='Y'){
echo "
$field_max : $c_max
| ";
}
if($use[4]=='Y'){
echo "
$field_now : $total_user
| ";
}
echo "
";
}
/*세로 모드*/
function vertically_mode(){
global $field_tot,$field_tod,$field_yes,$field_max,$field_now,$c_tot,$c_tod,$c_yes,$c_max,$total_user;
global $td_tot_color,$td_tod_color,$td_yes_color,$td_max_color,$td_now_color,$ft_tod,$ft_now;
global $img,$use,$align,$td_height,$PHP_SELF;
echo "";
if($use[4]=='Y'){
echo " $field_now: |
$total_user |
";
}
if($use[0]=='Y'){
echo " $field_tod: |
$c_tod |
";
}
if($use[1]=='Y'){
echo " $field_yes: |
$c_yes |
";
}
if($use[2]=='Y'){
echo " $field_max: |
$c_max |
";
}
if($use[3]=='Y'){
echo " $field_tot: |
$c_tot |
";
}
echo "
";
}
/*이미지 모드*/
function image_mode(){
global $c_tot,$simg,$align,$PHP_SELF;
for($n=0;$n<=6;$n++){
$rem=$c_tot%10;
$im[$n]=$rem;
$c_tot=($c_tot-$rem)/10;
}
echo "";
for($n=6;$n>=0;$n--){
$size=GetImageSize("image/$simg/$im[$n].gif");
echo " ";
}
echo " |
";
}
function Html_Header(){
global $win_title,$PHP_SELF;
echo "
$win_title
\n";
}
function Html_Footer(){
print "\n\n";
print "";
}
/* 환경설정 내용 불러오기 */
$res_var=file("$dir/$config");
for($n=0;$n<=19;$n++){
$res_var[$n]=chop($res_var[$n]);
}
$align=$res_var[1];
$prt_mode=$res_var[2];
$img=$res_var[3];
$simg=$res_var[4];
$ft_tod=$res_var[5];
$ft_now=$res_var[6];
$td_tod_color=$res_var[7]; //오늘
$td_yes_color=$res_var[8]; //어제
$td_max_color=$res_var[9]; //최대
$td_tot_color=$res_var[10]; //전체
$td_now_color=$res_var[11]; //현재
$field_tod=$res_var[12];
$field_yes=$res_var[13];
$field_max=$res_var[14];
$field_tot=$res_var[15];
$field_now=$res_var[16];
$ip_inFor=$res_var[17];
$use=explode("|",$res_var[18]);
$bgcolor=$res_var[19];
$textcolor=$res_var[20];
/* 환경설정 내용 불러오기 */
/***************************************** 현재 접속자 루틴 ****************************************/
function total_user(){
global $pre_data,$ip_inFor,$REMOTE_ADDR,$w_time;
$user_ip =$REMOTE_ADDR;
if($user_ip != $ip_inFor){
$FILE = fopen("$pre_data/$REMOTE_ADDR","w");
$info = time();
fputs($FILE,$info);
fclose($FILE);
}
$USER1 = opendir("$pre_data");
while($entry=readdir($USER1)){
if($entry!="." && $entry!=".." && $entry!="index.htm"){
$user1[]=$entry; // . .. index.html 제외한 파일명만 저장
}
}
$total = count($user1);
$total_user=$total;
for($i=0;$i<$total ;$i++) {
if($user_ip != chop($user1[$i])) {
$old_time = file("$pre_data/$user1[$i]");
$file = chop($user1[$i]);
$time = chop($old_time[0]);
if((time()-$w_time)>$time){
unlink("$pre_data/$file");
$total_user--;
}
}
}
return $total_user;
}
if($use[4] == 'Y') $total_user=total_user(); //$use[4]배열의 현재카운터 설정이 Y이면 실행
/***************************************** 현재 접속자 루틴 ****************************************/
if($mode==""){
html_head();
$fp=fopen("$dir/$apply","r");
flock($fp,1);
$Buffer=@fread($fp,filesize("$dir/$apply"));
flock($fp,3);
fclose($fp);
$tmp=explode("|",$Buffer);
$c_tod=(int)$tmp[0];
$c_yes=(int)$tmp[1];
$c_max=(int)$tmp[2];
$c_tot=(int)$tmp[3];
$c_day=(int)$tmp[4];
if($Zeus_cnt != "Zeus_value"){ /* 쿠키를 가지고 있지 않을 때 */
if(trim($c_day)==trim($now_date)){
if($REMOTE_ADDR!=$ip_inFor){
$c_tot++; $c_tod++;
}
if($c_tod>$c_max) $c_max=$c_tod;
}else{
if($REMOTE_ADDR!=$ip_inFor) $c_tot++;
$c_yes=$c_tod;
if($REMOTE_ADDR==$ip_inFor) $c_tod='0';
else $c_tod='1';
$c_day=$now_date;
/*********** 시간별 데이타 파일 초기화 **************/
for($i=0;$i<24;$i++){
if(strlen($i)==1) $thour="0".$i;
else $thour=$i;
$fp=fopen("$dir/$dir_time/$thour","w");
fputs($fp,"0");
fclose($fp);
}
/*********** 시간별 데이타 파일 초기화 끝**************/
}
$fp=fopen("$dir/$dir_time/$hour","r");
flock($fp,1);
$cnt=fread($fp,filesize("$dir/$dir_time/$hour"));
flock($fp,3);
fclose($fp);
if($REMOTE_ADDR!=$ip_inFor) $cnt++;
$fp1=fopen("$dir/$dir_time/$hour","w");
flock($fp1,2);
fwrite($fp1,$cnt);
flock($fp1,3);
fclose($fp1);
/* 오늘 날짜 데이타 저장 */
$res_tod=fopen("$dir/$apply","w");
flock ($res_tod,2);
fputs($res_tod,$c_tod."|".$c_yes."|".$c_max."|".$c_tot."|".$c_day);
flock ($res_tod,3);
fclose($res_tod);
switch($prt_mode){
case 'H': //가로 모드
horizontally_mode();
break;
case 'V': //세로 모드
vertically_mode();
break;
case'S': //심플 이미지 모드
image_mode();
break;
} /* switch end */
}elseif( $Zeus_cnt == 'Zeus_value' ){
switch($prt_mode){
case 'H': //가로 모드
horizontally_mode();
break;
case 'V': //세로 모드
vertically_mode();
break;
case'S': //심플 이미지 모드
image_mode();
break;
} /* switch end */
}
html_foot();
}elseif($mode=="stat"){
$total_user=total_user();
for($i=0;$i<=23;$i++){
if(strlen($i)==1) $thour="0".$i;
else $thour=$i;
$t_fp= fopen("$dir/$dir_time/$thour","r");
flock($t_fp,1);
(int)$t_cnt[$i]=@fread($t_fp,filesize("$dir/$dir_time/$thour"));
flock($t_fp,3);
fclose($t_fp);
$hour_total += $t_cnt[$i];
if($max_cnt < $t_cnt[$i]) $max_cnt = $t_cnt[$i];
}
$fp=fopen("$dir/$apply","r");
flock($fp,1);
$Buffer=@fread($fp,filesize("$dir/$apply"));
flock($fp,3);
fclose($fp);
$tmp=explode("|",$Buffer);
$tod=(int)$tmp[0];
$yes=(int)$tmp[1];
$max=(int)$tmp[2];
$tot=(int)$tmp[3];
$day=(int)$tmp[4];
$date=date("y/m/d");
$time=date("h:i:s");
Html_Header();
echo "
날짜 $date
|

|
시간 $time
|
Statistics/현재 접속자 : $total_user
|
${max}명
|
${tod}명
|
${yes}명
|
${tot}명
|
최대
|
오늘
|
어제
|
전체
|
";
for($i=0;$i<=23;$i++){
if($hour_total==0) $hour_total=1;
if($max_cnt==0) $max_cnt=1;
$percent = $t_cnt[$i]/$hour_total;
$x_width = 250*($t_cnt[$i]/$max_cnt);
if($x_width < 1){$x_width+=1;};
$percent = (substr($percent,0,6))*100;
echo "${i} | $t_cnt[$i][${percent}%] | ";
}
echo " | |
|
|
|
|
";
Html_Footer();
}elseif($mode=='admin'){
$res_var=file("$dir/$config");
$old_pass=chop($res_var[0]);
if($Win_Server=='0'){
$arr=array('a','b','c','d','e','f','g');
$crypt="$arr[4]$arr[3]";
$pass=crypt($passwd,$crypt);
}
else{ $pass=$passwd; }
if($old_pass!=$pass){
Html_Header();
echo "비번을 확인하세요!!
";
echo "
:: back :: ";
Html_Footer();
exit;
}
/* 카운터 값 불러오기 */
$fp=fopen("$dir/$apply","r");
flock($fp,1);
$Buffer=@fread($fp,filesize("$dir/$apply"));
flock($fp,3);
fclose($fp);
$tmp=explode("|",$Buffer);
$tod=intval($tmp[0]);
$yes=intval($tmp[1]);
$max=intval($tmp[2]);
$tot=intval($tmp[3]);
$day=intval($tmp[4]);
echo "
$win_title
|
저장된 IP :: [ $ip_inFor ] >>>>> 비밀번호 바꾸기
|
";
}
elseif($mode=="save"){
$res_var=file("$dir/$config");
if($pwd=='' and $repwd==''){
$pass=chop($res_var[0]);
}
else{
/* 비번 확인 */
if($Win_Server=='0'){
$arr=array('a','b','c','d','e','f','g');
$crypt="$arr[4]$arr[3]";
$pass=crypt($pwd,$crypt);
}else{ $pass=$pwd; }
/* 비번 바꾸기 */
}
if(!$simg_ip){ $simg_ip="f"; }
if($set_pm=='') $set_pm="H";
$passwd=$pass;
$align=$align_ip;
$prt_mode=$set_pm;
$img=$img_ip;
$simg=$simg_ip;
$ft_tod=$ft_tod_color;
$ft_now=$ft_now_color;
$td_color1=$td_tod_ip; //오늘
$td_color2=$td_yes_ip; //어제
$td_color3=$td_max_ip; //최대
$td_color4=$td_tot_ip; //전체
$td_color5=$td_now_ip; //현재
//$field1=$field1; $field2=$field2; $field3=$field3; $field4=$field4; $field5=$field5;
$ip_inFor=$ip0;
$use=$use0."|".$use1."|".$use2."|".$use3."|".$use4;
$bgcolor=trim($bg_color);
$textcolor=trim($text_color);
$res=fopen("$dir/$config","w");
flock($res,2);
fputs($res,$passwd."\n".$align."\n".$prt_mode."\n".$img."\n".$simg."\n".$ft_tod."\n".$ft_now."\n".$td_color1."\n".$td_color2."\n".$td_color3."\n".$td_color4."\n".$td_color5."\n".$field1."\n".$field2."\n".$field3."\n".$field4."\n".$field5."\n".$ip_inFor."\n".$use."\n".$bgcolor."\n".$textcolor);
flock($res,3);
fclose($res);
$res=fopen("$dir/$apply","w");
if(!$res){
echo "오늘 날짜 데이타 파일 생성 실패";
exit;
}
$tod=$set_tod;
$yes=$set_yes;
$max=$set_max;
$tot=$set_tot;
$day=$now_date;
fputs($res,$tod."|".$yes."|".$max."|".$tot."|".$day);
fclose($res);
Html_Header();
echo "
≪≪ $win_title ≫≫
";
echo "설정된 내용이 저장되었습니다!!
";
echo "
:: close :: ";
echo ":: back ::
";
echo "문의 사항 :: Here
";
Html_Footer();
exit;
}elseif($mode=="send"){
Html_Header();
if($mail=="")
{
echo "
답변을 받아 볼 이메일을 입력하세요
";
echo "Back
";
Html_Footer();
exit;
}
$Mail="wzzangw@hotmail.com";
$content=nl2br($content);
$Subject=$homepage;
$Subject.="";
$inFor="From: $name<$mail>\n";
$inFor.="Content-Type: text/html; charset=euc-kr";
mail($Mail,$Subject,$content,$inFor);
echo "
메일이 전송 되었습니다.
";
echo "Back
";
Html_Footer();
}
?>