Back

キリ番表示カウンターVer.0.2

(最終更新2004/2/9)

特徴 / Sample / ダウンロード / 設置方法 / 使い方 / その他

特徴

gif画像を使ったグラフィックカウンターです。そのページへのアクセス数をカウントし、表示します。
また、キリ番(管理人の設定したカウンターの値)のとき、訪問者へ様々な方法でお知らせできます。

  1. 表示する桁数は自由に設定できます。
  2. 表示できるのはトータルのカウント、昨日・今日のカウント、次のキリ番です。
  3. アクセスした人のIPアドレスを記録し、同じ日(または設定した時間の間)の同じIPアドレスからのアクセスはカウントも記録もしません。(何度リロードしてもカウンターの値は変わらないということです。)
  4. 管理用CGIから、アクセス記録の一覧を見ることができます。1日のアクセス数もわかります。
  5. 管理用CGIでアクセス記録の一覧を表示させたときクッキーを発行し、そのクッキーを持つ人がカウンターを設置したページを見ても、カウントも記録もしません。(ブラウザの設定でクッキーを有効にしている場合のみ。クッキーの有効期限は24時間です。)
  6. count.cgiでトータルのカウンターの値を画像で表示します。
    count.cgi?imageで画像を表示します。
    count.cgi?yesterdayで昨日のカウント数を画像で表示します。
    count.cgi?todayで今日のカウント数を画像で表示します。
    count.cgi?nextkiriで次のキリ番番号を画像で表示します。
    count.cgi?linkでリンク先をクリックすると指定ページへジャンプします。
    count.cgi?pageで指定したHTMLファイルを取り込んで表示します。
    (count.cgi?linkとcount.cgi?pageの違い・・・linkは自分のサイト以外へもリンクできます。
    pageは自分のサイト内のファイルだけですが、ページの中にカウンターの数字を反映させることができます。)
  7. キリ番だった訪問者に対しては、カウンターの数字画像の他、リンク先・表示画像・表示ページも他のカウントのときと違うものにできます。
  8. gif画像連結ライブラリgifcat.pl(杜甫々さん作)を利用しています。

サンプル

サンプルページ

  1. サンプルページのアクセスを記録、カウントを表示します。
  2. サンプルページにアクセスすると、JavaScriptを利用して小さいウィンドウが開くようにしています。 そのウィンドウ内にもカウントおよびキリ番かどうかが表示されます。(表示されるページはcount.cgi?pageを利用しています。)
  3. サンプルページ内に説明があります。

ダウンロード

  • counter.lzh---必要なファイルをまとめてlzhで圧縮しています。DLして解凍してください。
    中身は次のとおり。
    • count.cgi-----CGIスクリプト本体。
    • countkanri.cgi-----管理用CGIスクリプト本体。
    • gifcat.pl-----gif画像連結ライブラリ。
    • countlog.dat, count.dat, specialcount.dat-----空ファイル。
    • カウンター用gif画像0〜9が2種類。
      通常用
      0.gif

      1.gif

      2.gif

      3.gif

      4.gif

      5.gif

      6.gif

      7.gif

      8.gif

      9.gif
      キリ番用
      s0.gif

      s1.gif

      s2.gif

      s3.gif

      s4.gif

      s5.gif

      s6.gif

      s7.gif

      s8.gif

      s9.gif
  • 画像はこれを使わなくてもかまいません。ネット上にはたくさんの素敵な数字画像がフリーで配布されています。
    ただし使用できる条件は、
    • gif画像であること。アニメgifは不可。
    • 同じ種類では、画像の高さが同じであること。
    • ファイル名は0.gifやs_0.gifなどのように拡張子の直前はその数字を表す半角数字であること。
      (通常用とキリ番用を別フォルダに入れて、全て”数字.gif”としてもいい。)
  • 設置方法

    1. あなたのサーバーでCGIが使えるかどうか確認する。
      • CGIが使用可であること。perlのバージョンが5以上であること。

    2. count.cgiとcountkanri.cgiのperlのパスを変更する。
      • パスについてはお使いのサーバの管理者にお確かめ下さい。
        perlのパスが、
        /usr/local/bin/perl
        ならそのままで。

    3. サーバーにアップロードし、パーミッションを変更する。
      1. 画像ファイルはバイナリモード、その他はアスキーモードでアップロードする。
      2. count.cgiとcountkanri.cgiのパーミッションを700に変更する。(サーバーによっては755。サーバー管理者にお確かめください。)
      3. countlog.dat, count.dat, specialcount.datのパーミッションを666にする。(サーバーによっては変更の必要なし。サーバー管理者にお確かめください。)

    4. 動作確認
      • 設置したURL(count.cgi)へ直接アクセスする。画像で0001と表示される。
      • http://(設置したcount.cgiまでのパス)/count.cgi?linkにアクセスして、yahooページにジャンプする。
      • 管理用CGIを設置したURLへ直接アクセスする。パスワード入力画面になればOK。パスワードは初期状態ではmaster。
        以上ができればOK。

    5. 設定を変更する。
      • テキストエディタで、スクリプト中の設定部分を修正してください。
        #で始まる行、または行の#から後の部分はコメントなので、削除して結構です。改行には注意してください。
        基本的には、
        $変数名 = "";
        という形になっているので、値の部分を変更し、他の部分は変えないようにしてください。
        各項目の説明はスクリプト中に書いてあります。
        ログファイルや画像ファイル等、ファイルを指定するときは、CGIの位置から見た相対パスで記述してください。 (カウンターを貼り付けるページがどこにあっても、関係はありません。)

    6. アクセス数をカウントしたいページに、タグを貼り付ける。

      • カウンターを表示したい個所に、
        <img src="count.cgi">
        と記述する。
        count.cgiとタグを貼り付けるページが別ディレクトリのときは、count.cgiまでのパスも記述。

        リンクや画像等で、訪問者にカウントを目立たせたいときは、サンプルページのソースや使い方の説明を参考に工夫してください。
        ただし、
        <img src="count.cgi">
        で貼り付けた数字画像がアクセスの記録・カウントをするので、count.cgi?linkやcount.cgi?imageなどで呼び出したリンクや画像だけではアクセスの記録はしません。カウントも増えません。

    7. 管理用画面からキリ番を設定する。
      • キリ番の設定、カウントの値の変更等、必要に応じてすること。

    使い方

    カウンターを貼り付けたページと同じページに、次のようにcount.cgiを呼び出すことで、いくつかの情報を表示させることができます。 カウンターを貼り付けたページと同じページに、次のようにcount.cgiを呼び出すと、カウンターの値がキリ番のときと通常のときと、違う動作をします。
  • count.cgi?###は、グラフィックカウンター(count.cgi)と同じページで使ってください。
  • count.cgiを必ず1個所だけ貼り付けること。
  • その他

    感想。
    シンプルで、あんまりたいした機能のないグラフィックカウンターですが、とにかくキリ番をとった人にお知らせするための機能をいろいろ盛り込んでみました。 キリ番のときだけお知らせウィンドウが表示される、というのが本当はいいんですけど、それは難しかったんでパス。
    サンプルページではアクセスごとにお知らせウィンドウが出て、その内容がカウント次第で変化するようにしてみたんですが、毎回毎回そのページを表示させるたびにお知らせウィンドウが立ち上がるのが鬱陶しいです。
    どうせ毎回出てくるウィンドウなら、名前とカウントをCookieに覚えさせておいて、後はクリックするだけでポイントが貯まっていく、というのにしたいなと いろいろやってみたんですが・・・JavaScriptって難しいですね。とうとう挫折してしまいました。
    いつものことですが、CGIを作るよりも説明ページを作る方が大変でした。まあその過程で、count.cgi?pageというHTMLファイルを取り込んで、とかポップアップウィンドウで、という アイデアも出てきたんですが。(だからサンプルページだけ公開していたときと、サンプルが少し違います。)

    他にあんまりないだろう、と作ってみたんだけど、CGIスクリプトの検索サイトを見たら、なんのことはない、そういう分類すらあるぐらい、たくさんスクリプトがありました。なーんだ。 まあ他のスクリプトはもっと多機能だから、こんなシンプルなのがあってもいいだろうってことで。

    お願い。
    このカウンターのカウントもキリ番も、そんな精密なもんじゃありません。あくまでお遊びの範囲とお心得ください。

    更新履歴。
  • Ver.0.1-----2003/3/15。
  • Ver.0.2-----2004/2/9。

    Ver.0.1→Ver.0.2について。
    リクエストがあったのと、簡単そうだったので、昨日・今日のカウント数と次回キリ番を表示する機能を入れてみました。ついでにスクリプト全体の見直し。
    スクリプトを呼び出したページの直前のページを記録するようにしてたんですが、その環境変数の記述を間違っていて、取得できてなかったです。 でも記録してみたら、直前ページっていったって、スクリプトを貼り付けていたページなんですね。考えてみりゃ当たり前。で、意味がないので、直前ページを記録するのをやめました。 その代わり、管理用CGIでクッキーを発行して、カウンターCGIでクッキーを調べて、そのクッキーを持っていた場合は管理者と見なし、カウントを記録しないし、キリ番表示もしないようにしました。
    前ページの記録がなくなった分、ログの形式がちょっとだけ変わりました。
    で、サンプルのログの記録等もリセットして、新たな気分でやり直してます。

    今後。
     感想のところで書いたように、カウンターCGIは多機能なものがあるし、キリ番表示をするものもたくさんありますので、 私が作る必要はないかなと思います。もともとカウンターの必要は私にはないし。
     キリ番をポイント制にして、ポイントをためていく・・・というのを作りたくてカウンターを作ってみたけど、 うまく作りたい仕組みを作りこむことができなかったので、とりあえずその仕組みを思いつくまでは、たぶんカウンターCGIを作ることも、 このCGIのバージョンアップをはかることもないと思います。

    一言フォーム。

    一言フォームです、足りない場合は管理者宛私書箱へどうぞ。
  • Back