アクセスカウンター S-COUNTER

特徴、機能

  • シンプルで高速なアクセス・カウンター
  • 累計、昨日、今日、一定時間内、を計測
  • テキスト、画像(非連結)、一枚画像の3つの表示モード搭載
  • カウンター掲載側から桁数と表示モードの変更が可能
  • 一定時間内の連続アクセスカウント防止機能
  • 巡回クローラのカウント防止機能
  • 累計のキリ番メッセージ表示機能
  • 耐久性のあるファイルロック機能
  • アクセス統計機能搭載
  • 便利な携帯判別関数を搭載

サンプル

累計 昨日 今日 閲覧中
                      

統計サンプル

ダウンロード

必ず利用規約を読んで、同意の上でダウンロードして下さい。scounter.lzh

内容、構成

your_root / index.php (トップページ)
    │
    └─── scounter [701] / scounter.php
               │             scounter.html
               │             report.php
               │             report.html
               │             common.css
               │             sprite.css
               │
               ├────── data [707] データディレクトリ
               │
               └────── gif  [701] 画像ディレクトリ (任意)

使用方法

  1. ダウンロードしたファイルを解凍する。
  2. scounter.phpをメモ帳などで設定をする。
  3. ページにカウンターを埋め込む。
  4. 転送してdataディレクトリのパーミッションを変更する。
  5. カウンター掲載ページへアクセス。

FAQページ

カウンターの埋め込み方

このカウンターはPHP製ですので、埋め込むページがPHPファイルでなければいけません。HTMLファイルでも、拡張子を.phpに変えると使えるかもしれません。

まず、カウンタースクリプトを読み込んで下さい。アクセスすると$sc変数が生成されてカウントされます。内蔵の携帯判別関数を使えば、携帯の処理を分岐させる事もできます。PCと携帯で異なる表示モードを利用できます。

PHP

  1. require_once './scounter/scounter.php';
  2. if ($sc->isMobile()) {
  3.   // 携帯用の画面を出力
  4. } else {
  5.   // パソコン用の画面を出力
  6. }

最後に、データを引っ張ってきます。
各カウントは桁数指定でき、それに満たない場合は左側に0が補われます。
(桁数を指定しなかった場合や、指定桁数を超えた場合は整形されません。)

3桁毎のカンマ区切りにしたい場合は桁数の次に1を与えて下さい。
[例:7桁カンマ区切り] total(7, 1) => 1.234.567

PHP

  1. 累計のカウントは<?php echo $sc->total(桁数); ?>
  2. 昨日のカウントは<?php echo $sc->yesterday(桁数); ?>
  3. 今日のカウントは<?php echo $sc->today(桁数); ?>
  4. 閲覧中のカウントは<?php echo $sc->online(桁数); ?>
  5. キリ番の時だけ表示されるメッセージ<?php echo $sc->just(); ?>

画像モード

画像モードの場合は、0.gif~9.gifとカンマのc.gifを用意して下さい。
画像のディレクトリも設定します。(デフォルトは./scounter/gif/)
表示前にディレクトリを変更すれば、合計と今日のカウントを別々の画像にする事もできます。

PHP

  1. // 画像モードにする
  2. $sc->setMode('image');
  3. // 画像ディレクトリを設定
  4. $sc->setImgDir('/images');

スプライトモード(一枚画像モード)

このモードは、画像ファイルを一枚だけ使うので、桁数分の画像リクエストが発生せず、表示速度も上がります。ただし事前に手間がかかるので、サーバの負荷を極力減らしたいヘビーユーザー向けの機能です。

PHP

  1. // スプライトモードにする
  2. $sc->setMode('sprite');

一枚の画像を使って、各桁をspan要素の背景で表現します。例えば32は以下の様に出力されます。

HTML

  1. <span class="d3"> </span><span class="d2"> </span>

まず、10桁がまとまった1枚画像(0~9の横並びが良いでしょう)を用意し、各桁の位置と幅をCSSで指定します。カンマ区切りにする場合はカンマ画像も追加します。以下の参考CSSを同梱しておりますので、読み込むページに合わせて文字コードを変換してお使い下さい。

CSS

  1. /* 一枚画像モード用CSS */
  2. #counter {
  3. }
  4. /* 背景や幅を設定する為にブロック化して桁を並べる */
  5. #counter span {
  6.   display: block;
  7.   float: left;
  8. }
  9. /* 累計、昨日、今日、閲覧中の桁要素を包む要素 */
  10. #counter span.wrapper {
  11.   margin-right: 8px;
  12. }
  13. /* 桁要素に画像背景を設定 */
  14. #counter span span {
  15.   background: url(/scounter/gif/sprite.gif);
  16.   background-repeat: no-repeat;
  17. }
  18. /* 画像背景の位置と幅を調節 .dcはカンマ */
  19. #counter .d0{background-position:   0px 0px; width: 7px;}
  20. #counter .d1{background-position: -10px 0px; width: 4px;}
  21. #counter .d2{background-position: -20px 0px; width: 7px;}
  22. #counter .d3{background-position: -30px 0px; width: 7px;}
  23. #counter .d4{background-position: -40px 0px; width: 7px;}
  24. #counter .d5{background-position: -50px 0px; width: 7px;}
  25. #counter .d6{background-position: -60px 0px; width: 7px;}
  26. #counter .d7{background-position: -70px 0px; width: 6px;}
  27. #counter .d8{background-position: -80px 0px; width: 7px;}
  28. #counter .d9{background-position: -90px 0px; width: 7px;}
  29. #counter .dc{background-position: -100px 0px; width: 4px;}

例えば以下の様に埋め込んだ場合は、その下の様に出力されます。

PHP

  1. <p id="counter">
  2.   <?php echo $sc->total(2); ?>
  3.   <?php echo $sc->today(2); ?>
  4. </p>

HTML

  1. <p id="counter">
  2.   <span class="wrapper" title="total">
  3.     <span class="d8"> </span><span class="d5"> </span>
  4.   </span>
  5.   <span class="wrapper" title="today">
  6.     <span class="d2"> </span><span class="d3"> </span>
  7.   </span>
  8. </p>

更新履歴

2009/10/22 データ破損時に処理が中断してしまう問題を解消、携帯判別にiPhoneとAndroid追加
2009/08/11 処理速度向上、カウンター値確認画面追加
2009/05/28 携帯判別関数追加
2009/05/27 設定値や関数をclassで隠蔽
2009/05/23 スプライトモードのカンマ区切りに対応
2008/10/02 統計画面に月別アクセス数を表示
2008/08/23 表示モード設定削除
2008/03/10 大晦日のデータを翌年のレポートファイルに記録してしまうバグ修正
2008/02/16 簡単な統計レポート表示追加
2007/10/17 スプライトモード追加
2007/09/23 ファイルロックを更に強化
2007/09/19 ファイルロックを修正
2007/05/20 ロボットのカウント除外設定追加
2006/11/26 キリ番機能、一定時間内計測、などの変更と追加
2005/08/01 リリース

コメントは受け付けていません。