#!/usr/local/bin/perl5 ## ----------------------------------------------------------------------- ## DAY COUNTER-EX MANAGER v2.1 ## by KENT (99/05/05) ## E-MAIL: webmaster@kent-web.com ## URL: http://www.kent-web.com/ $ver = 'DayX v2.1'; # バージョン情報(修正不要) ## 1.このスクリプトはフリーソフトです。このスクリプトを使用したいかなる ## 損害も作者はその責を負いません。 ## 2.設置に関する質問は直接メールでは行ってはいませんので「サポート掲示板」 ## へお願いいたします。 ## ------------------------------------------------------------------------ ## 基本設定 $script = "./dayxmgr.cgi"; # スクリプト名 $logfile = "./dayx.dat"; # ログファイル $dayfile = "./day.dat"; # 日次記録ファイル $monfile = "./mon.dat"; # 月次記録ファイル $mcolor = "#0000E3"; # 月間アクセスグラフの色 $dcolor = "#D900D9"; # 日計アクセスグラフの色 $backurl = "../index.html"; # 集計一覧からの戻り先 $title = "アクセス集計一覧"; # 集計一覧のタイトル名 # 月間グラフ幅の調整 # 1か月平均 4桁で50〜100 5桁で200〜300程度 $mKEY = 60; # 日計グラフ幅の調整 # 1日平均 2桁で1〜2 3桁で5〜10 4桁で30〜60程度 $dKEY = 3; $bground = ""; # 壁紙の指定(パス付きで記述) $bgcolor = "#FAFAFA"; # 背景色 $text = "#000000"; # 文字色 $link = "#0000FF"; # リンク色(未訪問) $vlink = "#800080"; # リンク色(訪問済) $alink = "#FF0000"; # リンク色(訪問中) ## 設定完了 # 引数を解釈 $mode = $ENV{'QUERY_STRING'}; if ($mode eq "mon") { &mon_view; } &day_view; ## --- 月間アクセス数を表示 sub mon_view { open(IN,"$monfile"); @mlines = ; close(IN); # HTMLを表示 &header; print "\n"; print "\n"; print "\n"; print "\n"; $flag = 0; foreach (@mlines) { ($y_m,$mcnt) = split(/<>/, $_); # グラフ幅を指定 $width = $mcnt / $mKEY; $width = int($width); # 桁処理 $mcnt = &filler($mcnt); ($y_m,$y_d) = split(/\//, $y_m); $y_m=$y_m+1900; print ""; print "\n"; } print "

月間アクセス一覧

年月アクセス数グラフ
$y_m/$y_d$mcnt
\n"; &footer; exit; } ## --- 日次アクセス数を表示 sub day_view { open(IN,"$dayfile"); @dlines = ; close(IN); # HTMLを表示 &header; print "\n"; print "\n"; print "\n"; print "\n"; $flag = 0; foreach (@dlines) { ($m_d,$dcnt) = split(/<>/, $_); ($dummy,$week) = split(/\(/, $m_d); # グラフ幅を指定 $width = $dcnt / $dKEY; $width = int($width); # 桁処理 $dcnt = &filler($dcnt); if($week eq 'Sun)'){ $f_color='#FF0000'; }elsif($week eq 'Sat)'){ $f_color='#0000FF'; }else{ $f_color='#000000'; } print "\n"; print "\n"; } print "

日次アクセス一覧

月日アクセス数グラフ
$m_d$dcnt
\n"; &footer; exit; } ## --- HTMLヘッダ sub header { print "Content-type: text/html\n\n"; print "\n\n"; print "\n"; print "$title\n"; # bodyタグ if ($bground) { print "\n"; } else { print "\n"; } print "\n"; print "[もどる]\n"; # 集計切り替えによるリンク部を表示 if ($mode eq "mon") { print "[日次集計][ページアクセス]\n"; } else { print "[月間集計][ページアクセス]\n"; } # タイトル部の表示 print "
\n"; print "$title
\n"; print "

\n"; } ## --- HTMLフッタ sub footer { # 著作権表示(削除禁止) print "

\n"; print "- Day Counter-EX -\n"; print "

\n"; print "\n"; } ## --- 桁区きり処理 sub filler { local($_) = $_[0]; 1 while s/(.*\d)(\d\d\d)/$1,$2/; return $_; }