CGI動画カウンタZ「Animation Counter Z」

↑Anicntz Top ←Prev page Next page→


使用法

  1. ページ内での記述
  2. オプション指定
    IDentity(記録ファイル識別名)
    Column Length(最小表示桁数)
    eXPires(有効期限)
    BorDer(外枠の太さ)
    Frame color1(外枠の色)
    Frame color2(外枠の色)
    DiGit(数字種)
    BackGround(背景色)
    ForeGround(前景色)
    SHadow(影付け)
    Up and Down(上下拡張)
    Zero Suppression(ゼロ抑制)
    Animation Effect(動画効果)
    Animation Pattern(動画パターン)
    RePort(管理者宛通知)
  3. リンク元解析
  4. 隠密モード

ページ内での記述

カウンタを設置したいページのHTML中でカウンタを表示させたい箇所に、下記のようにIMGタグを貼り付けて下さい。

<IMG SRC="http://www.hogehoge.com/foo/cgi-bin/anicntz.cgi?[name]=[value]&amp;[name]=[value]&amp;~&amp;[name]=[value]">

[name]=[value]が1組のオプション記述となります。左辺が変数名、右辺がその変数に代入する値です。種別毎の詳細については後述します。
IMGタグ内の属性については各自で必要なものを指定するようにしてください。特に‘WIDTH’‘HEIGHT’は、カウンタの桁数・数字画像の大きさ・外枠の太さ、等によって変化するため多少面倒ですが、できるだけ指定した方が良いでしょう。また、カウンタ画像自体に「外枠有り」とした場合、「BORDER="0"」を指定するのがベターです。
なお、オプション同士を区切る‘&amp;’ですが、コレはHTML中に‘&’を記述する際の約束事(文字実体参照)です。単に‘&’と記述した場合ブラウザに誤認される可能性が有りますので注意して下さい。
※≪参考≫鳩丸ご意見番 - URI の中に & を書くべからず
↑Page top


オプション指定

「anicntz.cgi」ではカウンタの見映えや動作形態を、各種オプションによって様々に変える事ができます。
以下に各オプションの機能と記述法について解説します。
↑Page top


IDentity(記録ファイル識別名)
ID=(記録ファイル名)
(例)記録ファイル名:abc123.cgi → ID=abc123

設置するカウンタに対応する記録ファイルの名称を指定します。ただし拡張子は記述しないで下さい。
記録ファイルについての詳細は「記録ファイル」の項を参照して下さい。
↑Page top


Column Length(最小表示桁数)
CL=[1~](桁)
(例)8桁表示 → CL=8

カウンタの表示桁数を指定します。ただし、実際のカウント値の桁数が指定した桁数をオーバーしてしまった場合、全桁を表示するために前者が優先されます。
カウンタ値は一つの数値としてではなく各桁毎に分解した上で加算を行なっている為、Perlでは単独の数値として扱い得ない桁数でも支障をきたす事無く表示・加算する事が可能です。
100桁表示での運用例
↑Page top


eXPires(有効期限)
XP=[0~](時間)
(例)2時間 → XP=2

カウント値の有効期限を指定します。指定した時間内の再訪問を感知した場合、カウンタを加算せずに未だ有効な発行済カウント値を再表示します。0時間を指定すれば、訪問者を無条件にカウントすることもできます。
再訪問判定は cookieおよび IP比較によって行ないますが、ブラウザの設定によっては上手く働かずにカウントしてしまう場合もあります。
↑Page top


BorDer(外枠の太さ)
BD=[0~]
(例)3ドット → BD=3

数字画像の周りに表示させる外枠の太さを指定します。
見映えについては目次の Sample3を参照してください。
↑Page top


Frame color1(外枠の色1)
F1=[0~7]

外枠の左辺・上辺の色を色番号で指定します。数字画像自体が8色しか使えないため、外枠の色もその中からしか選べません。
見映えについては目次の Sample3を参照してください。
↑Page top


Frame color2(外枠の色2)
F2=[0~7]

外枠の下辺・右辺の色を色番号で指定します。その他は(外枠の色1)と同様です。
見映えについては目次の Sample3を参照してください。
↑Page top


DiGit(数字種)
DG=(数字種定義ファイル名)
(例)使用定義ファイル名:dig16_04.pl → DG=dig16_04

表示させたい書体の数字が定義されているファイルの名称を指定します。拡張子は記述しないでください。
↑Page top


BackGround(背景色)
BG=[rrggbb]
(例)背景色#FF8800 → BG=FF8800

背景色(色番号0)の色を、RGB(赤緑青)の順に16進2桁で指定します。
↑Page top


ForeGround(前景色)
FG=[rrggbb]
(例)前景色#0077FF → FG=0077FF

前景色(色番号7)の色を、RGB(赤緑青)の順に16進2桁で指定します。
背景色と同じ色は指定しないでください。
↑Page top


SHadow(影付け)
SH=[0|1]
(例)影なし → SH=0

カウンタ画像をより立体的に表現するための影付けを行なうかどうかを指定します。
※影情報はVer.7同梱の数字画像データに個別に組み込んであります。自作、若しくはVer.6B以前の数字画像データを使用していて影情報がない場合、「影有り」を指定しても影は付きません。
↑Page top


Up and Down(上下拡張)
UD=[0~]
(例)17pixel拡張 → UD=17

カウンタを円筒形の機械式デジタルメーターに見立て、指定したドット数分を上下それぞれに拡張した画像を生成します。
「影有り」指定と併用することで、より立体的な視覚効果が得られます。
↑Page top


Zero Suppression(ゼロ抑制)
ZS=[0|1]
(例)ゼロ抑制 → ZS=1

カウント値より上位の先行ゼロ列を空白に置き換えます。
999→1000のように桁数が増加する場合は、加算後の桁数を適用します。
↑Page top


Animation Effect(動画効果)
AE=[0|1]
(例)動画効果有り → AE=1

「anicntz.cgi」の特徴であるところの動画効果を使用するかどうかを指定します。
↑Page top


Animation Pattern(動画パターン)
AP=(動画定義ファイル名)
(例)動画定義ファイル:anm16_00.pl → AP=anm16_00

使用する動画パターン定義ファイルの名称を指定します。拡張子は記述しないでください。
↑Page top


RePort(管理者宛通知)
RP=[0|1~]
(例)通知機能不使用 → RP=0
(例)10件以上溜まったら通知 → RP=10

サーバでsendmailの使用が許可されていなかったり、sendmailによる各種通知機能を使用しない場合には0を指定します。
使用する場合、XPオプションで指定した有効期限の切れたカウント情報をメールにて通知することになります。その際、ある程度の件数が溜まってからまとめて通知させたい場合には、その最低件数を指定してください。
sendmailが使用できないにもかかわらず1以上を指定していると、サーバエラーによりカウンタが動作しなくなります。
↑Page top


リンク元解析

sendmailによる通知機能が使用できる場合、以下のようにしてjavascriptを併用した「リンク元解析」を行うことができます。

<SCRIPT TYPE="text/javascript">
<!--
  document.write('<IMG SRC="http://www.hogehoge.com/foo/cgi-bin/anicntz.cgi?[name]=[value]&amp;[name]=[value]&amp;~&amp;RF=' + escape(document.referrer) + '">');
//-->
</SCRIPT>

また、javascriptが使えないブラウザによる閲覧も配慮し、併せて以下の記述も忘れないようにしてください。

<NOSCRIPT>
  <IMG SRC="http://www.hogehoge.com/foo/cgi-bin/anicntz.cgi?[name]=[value]&amp;[name]=[value]&amp;~&amp;RF=noscript">
</NOSCRIPT>

これはとほほカウンタで用いられていた手法からアイディアを借用させて頂きました。誰が最初に考案したのかハッキリとは判りませんが、発案者に敬意を表すると共にこの場を借りて御礼申し上げます。

※「リンク元解析」には以下の制限があります。
・javascriptが機能しないブラウザからはリンク元の取得はできません。(「noscript」がセットされる)
・ブラウザの実装に依っては、直接リンクを貼られていないアドレスが通知されてしまう場合があります。
・CGIが取得したリンク元情報は、sendmailによる管理者宛通知でしか知ることができません。
↑Page top


隠密モード

上の「リンク元解析」の発展形として、anicntz.cgiをサイト内の各ページに潜ませてまとめてアクセス解析する機能です。
以下のような構成のサイトで利用する場合を例にとって説明します。

http://www.hogehoge.com/foo/
  |-- aaa.htm     (ページA)
  |-- bbb.htm     (ページB)
  |-- sub/        (サブディレクトリ)
    |-- ccc.htm     (サブディレクトリ下ページC)

先ず、隠密モード用の記録ファイルを新しく用意し、1行目にはアクセス解析の対象となるページ群のアドレスで共通の部分を書き出します。

http://www.hogehoge.com/foo/

2~3行目は通常の記録ファイルと同様です。

次に対象となる各ページ内の記述です。
基本的には「リンク元解析」の通りですが、隠密モードの場合以下のようにHDオプションを加えてください。
また、IMGタグには「WIDTH="1" HEIGHT="1" BORDER="0"」を必ず記述してください。

・ページA「http://www.hogehoge.com/foo/aaa.htm」の場合

<SCRIPT TYPE="text/javascript">
<!--
  document.write('<IMG SRC="http://www.hogehoge.com/foo/cgi-bin/anicntz.cgi?HD=aaa.htm&amp;[name]=[value]&amp;~&amp;RF=' + escape(document.referrer) + '" WIDTH="1" HEIGHT="1" BORDER="0">');
//-->
</SCRIPT>
<NOSCRIPT>
  <IMG SRC="http://www.hogehoge.com/foo/cgi-bin/anicntz.cgi?HD=aaa.htm&amp;[name]=[value]&amp;~&amp;RF=noscript" WIDTH="1" HEIGHT="1" BORDER="0">
</NOSCRIPT>

・ページB「http://www.hogehoge.com/foo/bbb.htm」の場合

<SCRIPT TYPE="text/javascript">
<!--
  document.write('<IMG SRC="http://www.hogehoge.com/foo/cgi-bin/anicntz.cgi?HD=bbb.htm&amp;[name]=[value]&amp;~&amp;RF=' + escape(document.referrer) + '" WIDTH="1" HEIGHT="1" BORDER="0">');
//-->
</SCRIPT>
<NOSCRIPT>
  <IMG SRC="http://www.hogehoge.com/foo/cgi-bin/anicntz.cgi?HD=bbb.htm&amp;[name]=[value]&amp;~&amp;RF=noscript" WIDTH="1" HEIGHT="1" BORDER="0">
</NOSCRIPT>

・サブディレクトリ下ページC「http://www.hogehoge.com/foo/sub/ccc.htm」の場合

<SCRIPT TYPE="text/javascript">
<!--
  document.write('<P><IMG SRC="http://www.hogehoge.com/foo/cgi-bin/anicntz.cgi?HD=sub/ccc.htm&amp;[name]=[value]&amp;~&amp;RF=' + escape(document.referrer) + '" WIDTH="1" HEIGHT="1" BORDER="0"><\/P>');
//-->
</SCRIPT>
<NOSCRIPT>
  <P><IMG SRC="http://www.hogehoge.com/foo/cgi-bin/anicntz.cgi?HD=sub/ccc.htm&amp;[name]=[value]&amp;~&amp;RF=noscript" WIDTH="1" HEIGHT="1" BORDER="0"></P>
</NOSCRIPT>

「隠密モード」では閲覧者にその存在を極力悟られぬようにする目的から、以下のような制限が生じます。
・出力画像は1×1透過GIFに固定。(見映えや動画に関するオプション指定は全て意味を為さない。)
・cookieによる有効期限判定を行なわない。(cookieの確認ダイアログを抑止するため。XPオプション無効。)
↑Page top