메인 공지사항 기능소개 매뉴얼     TEST BOARD : [1]  [2]  [3]  [4]  [5]
내용없음9
내용없음10
      APPLICATION
무료 스킨.모듈

유료 스킨.모듈

활용 홈페이지

활용팁 공유

자료 공유

유틸리티

웹 스터디
제작자 리소스

최근 활용팁 공유 RANK
신홍
3
작은소망
1
        -- update:30Min --


방문자 그래프
TechNote skin & module
테크노트 스킨 및 모듈 / freeware
테크노트 사용에 직접 연관된 자료는 이곳에 올려 주시기 바랍니다.
자료 등록시 300 포인트 적립됩니다.
     
  작성자 스카라베       등록자료(2)
  분 류 디자인
  첨부#3 util4_include_counter2.php
ㆍ조회: 1777  ㆍ추천: 10       
ㆍ작성일: 2014/08/21 (목)
방문자 그래프
 
 
 
 
<?
// 카운트정보 추출
// 파일:  util4_include_counter.php
// 용도: 메인홈페이지에 방문자카운타, 글등록카운타  삽입
 
//-------------------------------------------------------------
 
// [▨ 설정1] 방문자수를 읽을 대표 보드
// 이 설정이 주석처리 되어 있을땐 현재 출력된 보드의 방문자수를 읽는다.
       $cnF_cntBoard= "poozxmain";
 
// [▨ 설정2] 캐쉬적용 시간(분)
// 출력속도 향상을 위해,  DB로 부터 데이타를 매번 추출하지 않고 이전에 추출했던 데이타를 text 파일로 저장했다가 출력 한다.
// 몇분 경과후 DB에서 데이타를 재 추출할 것인지를 지정한다. 지정시간 경과시 캐쉬 데이타는 새로 생성-저장 된다.
// 홈페이지 작업시에는 실제출력을 항상 확인하기 위해 0 으로 지정하되, 제작 완료후에는 10분 이상으로 지정하는게 좋다.
       $temp_cache_min= 0;
 
//--------------------------------------------------------------
// 이하 설정항목 없음
//--------------------------------------------------------------
 
global $CONFIG,$db_ident,$this_skin,$Bconf_h;
 
// -------------------- 캐쉬읽음
       if($temp_cache_min>0){
          $cache_html_dir="$CONFIG[data_path]/temp/html_cache";
          $cache_html_file="$cache_html_dir/".substr(md5(__FILE__),0,10);
          $Index_html=@file($cache_html_file);
          $Index_html[0]+=0;
               if(time()-$Index_html[0]<$temp_cache_min*60){
                      unset($Index_html[0]);
                      echo implode("\n",$Index_html);
                      return;
                      }
                       else{
                              if($Index_html[0]<100){
                                 @mkdir($cache_html_dir,0777);
                                 @chmod($cache_html_dir,0777);
                              }
                              ob_start();
                           }
                      }
// -------------------- 캐쉬읽음
 
 
 
// 특정 보드명 지정되어 있을땐 (전체방문,오늘방문,어제방문) 을 해당 보드에서 읽음
          if($cnF_cntBoard and $cnF_cntBoard!=$CONFIG['board']){
             $Bconf_h=SQL_select_Fetch(" no=1 ",($db_ident.'2_'.$cnF_cntBoard.'_ad')," tx6_13 as vtotal,tx6_14 as vtoday ");
             $CONFIG['table_cnt']=$db_ident.'2_'.$cnF_cntBoard.'_cnt';
           }
 
       $Week_kor=array('일','월','화','수','목','금','토');
  
// 전체글등록수
       $ROOTcnt=mysql_fetch_array(mysql_query(" select
                sum(RC_cnt1) as total_write,
                sum(RC_cnt2) as today_write,
                sum(RC_cnt3) as total_reply1,
                sum(RC_cnt4) as total_reply2,
                sum(RC_cnt5) as total_reply3
                from $CONFIG[table_root_cnt] "),MYSQL_ASSOC);
  
       ?>
  
       <style type='text/css'>
          .list_no1 {text-align:center; font-size:7pt; font-family:Tahoma,돋움; color:#8A8A8A;} /*방문자수*/
          .list_no2 {text-align:center; font-size:7pt; font-family:Tahoma,돋움;}
          .list_no3 {text-align:center; font-size:8pt; font-family:Tahoma,돋움;} /*요일*/
       </style>
  
  
 <!--테두리곡선top-->
 <? round_slim_top("round_color=#dedede","width=152 align=center"); // 테두리곡선top ?>
   
   
<table border="0" cellpadding=0 cellspacing=0>
<tr>
 
       <?
           //--------------------------------------------------------------
           // 설정항목
           //--------------------------------------------------------------
   
   
           $red_color = "100";       //rgb 빨강 0~255  // 100
           $gre_color = "150";       //rgb 녹색 0~255  // 150
           $blu_color = "50";        //rgb 파랑 0~255  // 20
           $ind_color = "20";        //rgb 색상 index 단계설정  // 20
           $background = "#008080";  // 당일 그래프 색상
   
           $i_day = "7";             // 그래프표시일수 (표시 일수 -1일 ) // 7
           $td_width = "15";         //그래프 폭 // 15
           $max_height ="100";        //그래프 최대 높이 // 150
   
           $up_ea = "0";             //일일 방문자 수가 적어서 쪽 팔릴 때 뻥티기 인원수 // 24의 배수입력
           $totup_ea = "0";      //전체 방문자 뻥티기 인원수

   
           //--------------------------------------------------------------
           // 이하 설정항목 없음
           //--------------------------------------------------------------
 
           $j="-1";
           $stmax ='0';
       for($k=$i_day; $k>$j; $k--){ // $i_day 일 동안 최대 방문자수을 구한다
           $k_ne=$k*86400;
           $GetDate_k=getdate($CONFIG[this_time]-$k_ne);
           $Yesday_k=SQL_select_Fetch("t_year='$GetDate_k[year]' and t_mon='$GetDate_k[mon]' and t_day='$GetDate_k[mday]'",$CONFIG['table_cnt']);
           $max_td = $Yesday_k[c_total];
       if ($stmax < $max_td) {$stmax=$max_td;} else {$stmax=$stmax;}  //최대 방문자수
           }
           $mini = $max_height/$stmax;  // $max_height 그래프 최대 높이를 방문자 수로 나눈다 (비율계산)
   
       for($i=$i_day; $i>$j; $i--){ // 일일 방문자수
           $ind = $ind_color*$i;  //일일 그래프 색상 시작
           $red = $red_color+$ind;
       if ($red > 255){$red=255;}
  
           $gre = $gre_color+$ind;
       if ($gre > 255){$gre=255;}
  
           $blu = $blu_color+$ind;
       if ($blu > 255){$blu=255;}
  
           $td_color = "background:rgb($red,$gre,$blu);";
       if ($i== 0){$td_color="background:$background";}  //일일 그래프 색상 끝
   
           $i_ne=$i*86400;
           $GetDate_i=getdate($CONFIG[this_time]-$i_ne);
           $date_i=date("d", $CONFIG[this_time]-$i_ne);
           $wk_i=$GLOBALS['Week_kor'][date("w",$CONFIG[this_time]-$i_ne)];
           $Yesday_i=SQL_select_Fetch("t_year='$GetDate_i[year]' and t_mon='$GetDate_i[mon]' and t_day='$GetDate_i[mday]'",$CONFIG['table_cnt']);
 
           $td_h = $Yesday_i[c_total];  //일일 그래프 높이
           $td_height = $Math.ceil($td_h*$mini);  //일일 그래프 높이*비율 소수점 올림
   
       if ($up_ea >= 24) {$up_eaa = $Math.ceil($up_ea/24);} else {$up_eaa = '0'; }
       if ($i==0) {$dayea = $td_h+date("h")*$up_eaa; } else { $dayea = $td_h+$up_ea; }  //당일 방문자 수를 24시간 동안 서서히 증가시킨다
       if ($up_ea >= 24) {$totup_eaa = date("h")*$up_eaa;} else {$totup_eaa = '0'; }   // 전체 방문자
   
   
       if(date("l", $CONFIG[this_time]-$i_ne)==Sunday) { $color='red'; } //일요일
   elseif(date("l", $CONFIG[this_time]-$i_ne)==Saturday) { $color='blue'; } //토요일
   else  { $color='#006400'; } //평일
 
       if ($i==0) {$img = "$this_skin/b_img_add/mem_on.gif";} else {$img = "$this_skin/b_img_add/mem_off.gif";} //해드이미지
 
           $list_table .= "<td valign=bottom>\n<table cellpadding=0 cellspacing=1 title=".date("Y-m-d-l", $CONFIG[this_time]-$i_ne)."></td>\n";
           $list_table .= "<tr>\n";
           $list_table .= "<td class=list_no1><nobr>".$dayea."</nobr></td>\n</tr>\n<tr>\n";
           $list_table .= "<td class=list_no3><img src=".$img." width=".$td_width." border=0></td>\n</tr>\n<tr>\n";
           $list_table .= "<td height=".$td_height." style='".$td_color."'></td>\n</tr>\n<tr>\n";
           $list_table .= "<td class=list_no3><font color=".$color.">".$date_i."<font style='font-size:8pt; font-family:Tahoma,돋움;'><br>".$wk_i."</font></font></td>\n</tr>\n</table>\n</td>\n";
       }
 
       echo $list_table; // 화면 출력
 
       ?>
 
<!-- 카운타 정보 출력 html ############## -->
 
</tr>
</table>
       <div style="width:95%; text-align:center; color:#888888; font-size:9pt; font-family:굴림체; border:1px solid #ebebeb; padding-top:5;background-color:#fdfdfd;">
           전체방문 : <b><?=number_format($Bconf_h[vtotal]+$totup_ea+$totup_eaa)?></b>
       </div>
   
 
<? round_slim_bottom(); // 테두리곡선bottom ?>
 
       <div style="width:160px; text-align:left; color:#888888; font-size:9pt; font-family:굴림체;line-height:120%; border:0px solid #ebebeb; padding:5; margin:4 0 4 0; b0ackground-color:#fdfdfd;">
           &nbsp;&nbsp;전체 글등록 : <b><?=number_format($ROOTcnt[total_write])?></b><br>
           &nbsp;&nbsp;오늘 글등록 : <?=$ROOTcnt[today_write]?><br>
           &nbsp;&nbsp;전체 답변글 : <?=$ROOTcnt[total_reply1]?><br>
           &nbsp;&nbsp;댓글및 쪽글 : <?=$ROOTcnt[total_reply2]+$ROOTcnt[total_reply3]?>
       </div>
 
<!-- ■ cache update 표시 -->
<table width='90%' cellpadding=0 cellspacing=0  border=0 bgcolor=#fbfbfb style='border:0px solid #dadada; border-top:0; cursor:pointer;'>
       <tr>
           <td align=center style="color:#bbbbbb; padding:3; font-family:Tahoma,돋움; font-size:8pt;" onclick="alert('<?=$temp_cache_min?> 분 간격으로 업데이트 됩니다.')">
               counter update : <?=$temp_cache_min?> minute
           </td>
       </tr>
</table>
<!-- 카운타 정보 출력 html ############## -->
 
<?
 
//----------------------------------------- 캐쉬저장
       if($temp_cache_min>0 and $cache_html_file){
       $cnt_html=ob_get_contents();
       ob_end_flush();
       if($fw_file=@fopen($cache_html_file,"w")){ // 캐쉬파일 저장
       @fwrite($fw_file,time());
       @fwrite($fw_file,"\n\n\n");
       @fwrite($fw_file,$cnt_html);
       @fclose($fw_file);
       @chmod($cache_html_file,0777);
       unset($cnt_html);
       }
       else{
       if(!is_dir("$CONFIG[data_path]/temp")) echo "캐쉬에러: $CONFIG[data_path]/temp  경로가 옳은지 확인하십시오";
       else echo " ---- 캐쉬 저장 실패<br>'$cache_html_dir' 폴더를 '새로 생성'하고 퍼미션 777 지정하십시오.------- ";
       }
       }
//----------------------------------------- 캐쉬저장
?>
 
 
소수 설정은 빨간색 부분만 하시면 됨니다.
 
///////////////////////////////////이상 끝 
 
 이하 삽입 소스
 
 
<!-- ### 테두리선 top #### -->
<table width='172' cellspacing=0 cellpadding=0 border=0 align=center style="margin-bottom:7px">
 <tr><td height=6 background="<?=$this_skin?>/b_img_add/leftbox_head.gif"></td></tr>
 <tr><td align=center background="<?=$this_skin?>/b_img_add/leftbox_body.gif">
<!-- ### 테두리선 top ### -->

<? include "$this_skin/util4_include_counter2.php"; ?>
 
<!-- ### 테두리선 bottom ### -->
 </td></tr><tr>
 <td height=6 background="<?=$this_skin?>/b_img_add/leftbox_foot.gif"></td></tr>
</table>
<!-- ### 테두리선 bottom ### -->
 
 
 
 
 
       
TECHSTAR
2014-08-21 11:47
선택된 답변입니다.
감사합니다. 테크노트가 더 돋보이는 모듈이네요.
     
아이런
2014-08-21 11:51
선택된 답변입니다.
멋지네요.. 나중에 달아봐야지..
     
카우스
2014-08-21 08:15
고생하셨습니다. 감사히 잘 쓰겠습니다.
     
아이케
2014-08-21 10:09
이쁘네요!
     
NE1
2014-08-21 17:56
능력자십니다.
감사합니다.
     
스데반
2014-08-22 06:26
아름다운 카운터네요.
수고해 주시고 올려주신 것 감사합니다.^^
     
홍다람쥐
2014-08-28 09:03
유용한자료 잘 쓰겠습니다.
     
다금바리
2014-08-29 09:22
감사합니다 ^^  잘 쓰겠습니다
     
나그네77
2014-08-30 22:52
좋은 자료 잘 사용하도록 하겠습니다. 감사합니다.
     
스카라베
2014-09-04 20:46
방문자에게 홈정보 노출꺼리시는분은
1_main_html.php
아랫부분에
                          <!-- ■ 우측영역 ################################## -->
                          <td id='mainright_td' width=11 align=center valign=top>
                              <!-- ▧ [보드설정 10-6] 에 파일명 지정이 있을땐 해당 파일을 include -->
                             
                             <? if($Bconfig[config_add6] && $you_Member[m_level]<=5) {
                                   include "$this_skin/$Bconfig[config_add6]"; }else{
                                   include "$this_skin/util4_include_counter.php";}
                             ?>

이런식은로 하시면 특정 레벨 이상만 방문 카운터 볼수 있습니다.
     
청주산의
2014-10-08 14:19
예쁩니다. 감사 드립니다.
     
뮤지아
2014-10-24 13:53
혹시 특정게시판을 제외하고 카운팅 할수도 있나요?
스카라베 본 페이지 소스중
// [▨ 설정1] 방문자수를 읽을 대표 보드
// 이 설정이 주석처리 되어 있을땐 현재 출력된 보드의 방문자수를 읽는다.
      $cnF_cntBoard= "카운트 할 보드명";
특정 게시판 제외가 아닌 특정 게시판 만 출력 합니다.
10/24 16:56
     
  0
3500
FILE #1 .
FILE #2 .
FILE #3 .
FILE #4 .
FILE #5 .
FILE #6 .
FILE #7 .
FILE #8 .
FILE #9 .
FILE #10 .
번호     글 제 목  작성자 작성일
460 홈,빌더 컨텐츠몰 모바일(UTF8) [2]+2 별미일체 2017-04-20
459 홈,빌더 모바일 추천점수(-10~10) iwindow 수정 [2] 별미일체 2017-03-07
458 이미지 2017 근하신년 신년인사 캘리그라피자료 첨부 [6] 소망의힘 2016-12-28
457 확장스킨 유튜브검색 유튜브 등록게시판 [3]+4 늑대소냐 2016-07-06
456 확장스킨 자산관리스킨 v1.01 [2] 화랑 2016-05-27
455 홈,빌더 자산관리게시판 [1] 화랑 2016-05-25
454 부분삽입 구글지도 쉽게 사이트에 넣기.. 코딩 불필요 [3] 모두모두 2016-05-08
453 부분삽입 g빌더용 슬라이드 갤러리 최근 게시물 [7]+6 늑대소냐 2016-01-02
452 외부연동 모바일에서 SNS연동하기 [6]+3 별미일체 2015-12-01
451 이미지 백그라운드 슬라이드 [7]+4 늑대소냐 2015-04-11
450 쇼핑몰 상품 슬라이드 (쇼핑몰과 일반홈페이지 적용) [8] 늑대소냐 2015-03-18
449 쇼핑몰 쇼핑몰 상품이미지 미리보기 입니다. [8] 늑대소냐 2015-02-24
448 확장스킨 테크노트 카렌다 ( 음력,기념일추가) [22]+12 늑대소냐 2015-01-26
447 부분삽입 이미지hover youtube동영상 배너입니다. [8]+4 늑대소냐 2015-01-15
446 확장스킨 인기검색어 순위변동 최근 게시물입니다. [4] 늑대소냐 2015-01-01
445 부분삽입 jquery 쿠키를 이용한 홈페이지 상단 공지창 [13]+7 늑대소냐 2014-12-30
12345678910,,,29