#!/usr/local/bin/perl # # アクセスカウンタの照会(本番用) # # id=cnts.cgi # update. 00.5.11 $file = "/dialup/chichibu/cgi-bin/acscnt.dat"; $bkpg = "http://www.kumagaya.or.jp/~chichibu/cgi1.html"; # ファイルを読む open(DATA,"$file"); $cnt = ; close(DATA); # もしファイルにデータがなかったらテーブルを0で初期化する if ($cnt eq "") { &syokika; }else{ @cnt = split(/,/,$cnt); } # HTML出力前に時間帯別合計を求める $a = $cnt[13] + $cnt[14] + $cnt[15] + $cnt[16]; if ($a eq 0) { $k1 = 0; $k2 = 0;$k3 = 0;$k4 = 0; } else {$k1 = $cnt[13] * 100 / $a;$k2 = $cnt[14] * 100 / $a;$k3 = $cnt[15] * 100 / $a;$k4 = $cnt[16] * 100 / $a;} # 少数点第1位で揃える $k1 = sprintf("%.1f",$k1); $k2 = sprintf("%.1f",$k2); $k3 = sprintf("%.1f",$k3); $k4 = sprintf("%.1f",$k4); # %を付ける $k1 = $k1."%"; $k2 = $k2."%"; $k3 = $k3."%"; $k4 = $k4."%"; # 2桁にする $cnt[1] = sprintf("%.2d",$cnt[1]); $cnt[2] = sprintf("%.2d",$cnt[2]); $cnt[3] = sprintf("%.2d",$cnt[3]); $cnt[5] = sprintf("%.2d",$cnt[5]); $cnt[6] = sprintf("%.2d",$cnt[6]); $cnt[7] = sprintf("%.2d",$cnt[7]); # HTML出力 print "Content-type: text/html\n\n"; print "\n\n"; print ''."\n"; print "カウント分析\n"; print ''."\n"; print ''."\n"; print ''; print ''."\n"; print '

カウント分析(表紙)

   戻る
'; # テーブルを使い表を2つ並べる print ''; print ''; print ''; print '
'."\n"; # 累計 print "\n"; print ''."\n"; print ''."\n"; print ''."\n"; print ''."\n"; print "
累計'.$cnt[0].'
本日'.$cnt[4].'
本日日付'.$cnt[1].''.$cnt[2].''.$cnt[3].'
最終更新日'.$cnt[5].''.$cnt[6].''.$cnt[7].'
\n\n

\n\n"; print '

     '."\n"; # 時間帯別 print "\n"; print "\n"; print ''."\n"; print ''."\n"; print ''."\n"; print ''."\n"; print '
時間帯件数構成比
朝6時〜12時'.$cnt[13].''.$k1.'
12時〜18時'.$cnt[14].''.$k2.'
18時〜24時'.$cnt[15].''.$k3.'
夜0時〜 6時'.$cnt[16].''.$k4.'
'; print '

'; # テーブルを使い表を2つ並べる print ''; print ''; print ''; print ''; print ''; print '
'."\n"; # 7日間記録 print ''."\n"; print "\n"; print ''."\n"; print ''."\n"; print ''."\n"; print ''."\n"; print ''."\n"; print ''."\n"; print ''."\n"; print '
日付件数
'.$cnt[39].''.$cnt[40].'
'.$cnt[41].''.$cnt[42].'
'.$cnt[43].''.$cnt[44].'
'.$cnt[45].''.$cnt[46].'
'.$cnt[47].''.$cnt[48].'
'.$cnt[49].''.$cnt[50].'
'.$cnt[51].''.$cnt[52].'
'; print '
   '."\n"; # ベスト5 print ''."\n"; print "\n"; print ''."\n"; print ''."\n"; print ''."\n"; print ''."\n"; print ''."\n"; print '
順位日付件数
1位'.$cnt[29].''.$cnt[30].'
2位'.$cnt[31].''.$cnt[32].'
3位'.$cnt[33].''.$cnt[34].'
4位'.$cnt[35].''.$cnt[36].'
5位'.$cnt[37].''.$cnt[38].'
'; print '
   '."\n"; # 月別 print "\n"; print "\n"; print ''."\n"; print ''."\n"; print ''."\n"; print ''."\n"; print ''."\n"; print ''."\n"; print ''."\n"; print ''."\n"; print ''."\n"; print ''."\n"; print ''."\n"; print ''."\n"; print '
件数
 1月'.$cnt[17].'
 2月'.$cnt[18].'
 3月'.$cnt[19].'
 4月'.$cnt[20].'
 5月'.$cnt[21].'
 6月'.$cnt[22].'
 7月'.$cnt[23].'
 8月'.$cnt[24].'
 9月'.$cnt[25].'
10月'.$cnt[26].'
11月'.$cnt[27].'
12月'.$cnt[28].'
'; print '
'; print "\n\n"; # テーブルを0で初期化する sub syokika { while ($#cnt + 1 < 60) { @cnt = (0,@cnt); } } ################## end of script ##################