TEXT Counter

3/27 TEXT Counterでバグが発見されました。
・著作権表示「TEXT COUNTER by HALCGI」が大量に書き込まれる。

現在配布中のCGIはバグが修正されております。
前バージョンのCGIをお使いの方はバグ修正後のCGIをダウンロードしてください。
「tc.cgi」のみを新しいものと取り替えるとうまく動くはずです。


特徴

  サンプル
   001322
   Today0002   Yesterday0001

  集計ページサンプル

 ◆カウンタを埋め込むHTMLそのものを書き換えていくカウンターです。
 ◆SSI不要
 ◆ジャバスクリプト不要
 ◆フレーム不使用
 ◆IPを使って同じ人が2回カウントするのを防止。(設定で変えれます)
 ◆複数ページに設置可能
 ◆ページごとに集計可能
 ◆総計、今日、昨日、最終アクセスの表示可能。
 ◆訪問者から見ればCGIを読み込む時間はゼロ。
 
 注意:HTMLそのものを書き換えるという操作をするCGIなので、HTMLを破損する危険性が
 あります。




ダウンロード

ダウンロード
(バグ修正済み)
右クリックから「対象をファイルに保存」をクリックしてください。
 




設置

 注意:HTML以外に使わないでください。(CGIへの使用などは不可です。)

 ■ 設定 ■■
 1.tc.cgi と ac.cgi をテキストエディタで開き、一行目のperlパスをサーバーにあった
   ものに変えてください。
   たいていの場合、#!/usr/local/bin/perl もしくは #!/usr/bin/perl で良いようです。

 2.config.pl をテキストエディタで開き基本設定を行ってください。

 3.サーバーにアップロードしてください。ディレクトリ構成はしたのとおり。
   [ ]内はパーミッション(アクセス権)です。
     
〜〜/ tc/ tc.cgi [ 755 ] (掲示板CGI本体)
ac.cgi [ 755 ] (集計CGI)
config.pl [ 664 ] (設定用ファイル)
cgi-lib.pl [ 664 ] (ライブラリ)
ac.gif/ [ 664 ] (グラフ画像)
log/ [ 777 ] (メインページログディレクトリ)
   clog.txt (カウンターログ)
   day.log (日別ログ)
   mon.log (月別ログ)
   ilog.txt (IPログ)
ac.gifは、NiftyなどCGIと画像を分けなくてはなら
ないサーバーではサーバーにあった場所に移して
ください。
 
 4.以下はindex.cgiにアクセスし管理モードから掲示板を作ってください。
   ウェブ上からの操作についてはCBBS、PBBS設定方法をご覧ください。


 ■HTMLの設定方法(長いですが最後まで読んでください)
.
最後に、表示させるHTMLに次のタグを埋め込みます。

<span tc1></span> <!-- トータルカウント //-->
<span tc2></span> <!-- 今日のカウント //-->
<span tc3></span> <!-- 昨日のカウント //-->
<span tc5></span> <!-- 前の人が来てからどれだけたったか //-->


※<!-- から //-->までの間は無くてもいいです。
上のタグで、tc1となっているタグの部分がCGIによって総計のカウンターの数字に置き換えられます。
同様に、tc2は今日のカウント tc3は昨日のカウント、
tc5は前にアクセスされてからどれだけ時間がたったかです。

・今月のカウントはどうやら動作不良なので現在表示できません。すみません。
・なお、同じ行に<span tc〜></span>タグを二つ書かないでください。
・また、<span tc〜></span>の間には何も入れないでください。


表示の例。(フォントタグを使って数字を緑色にしています。)

<font color=#00ff00><SPAN tc1> </SPAN></font><BR>
Today<font color=#00ff00><SPAN tc2> </SPAN></font>  
Yesterday<font color=#00ff00><SPAN tc3> </SPAN></font><BR>


わかんなかったら上のコピーすればいいです。



もう一つタグを埋め込みます。
HTMLの</BODY>の直前くらいに

<img src="〜〜〜〜/tc/tc.cgi">

というのを埋め込みます。
〜〜〜の部分は自分の環境に合わせて下さい。
つまりCGIを<img>で呼び出せばいいわけです。
これがないとCGIは動きません。



これで完成。

最初にページを開いたときは何も表示されませんが、最新の状態に更新をすると
ちゃんとでるはずです。

なお、使っていると表示するHTMLの下の方に著作権表示が埋め込まれます。
それがイヤな人はtc.cgiの
#下3行著作権表示。どうしてもデザイン上けしたい人は下の3行を消して、リンクページにでもHALMIDIへのリンクを張ってください。それもイヤなら管理人まで。
というところに従ってください。

まあ、、別に勝手に消しても怒りませんが。



ひとつのCGIで複数設置する場合

<span tc〜></span>のところはそのままで、
一番下のCGI呼び出しのところで、
<img src=〜〜〜〜〜/tc/tc.cgi?url=そのページのURL>としてください。
注意:そのページのURLの所は、http://からでなく/もしくは./から書いてください。
(例:<img src=../tc/tc.cgi?url=/homepage/cgi/tc.htm>)
 その際に相対パスの基準となるパスはconfig.plで設定可能です。



集計ページの見方について。

〜〜〜/tc/ac.cgi にアクセスすれば集計ページがみれます。
複数設置した場合、他のページはアドレスのリンクをクリックするとみられます。





仕組みについて
このテキストカウンターは、

1訪問者がHTMLを見る。
2HTMLが最後にCGIを呼び出す。
3CGIが訪問者が見ていないうちにこそっとHTML自体を書き換えておく

このようにしてテキストでのカウンターを実現させています。

つまり3番でCGIがHTMLを読み出し、<span tc1></span>の間の部分だけを
数字に置き換えてまた書き出しているのです。
結果的に遅れて遅れて数字を足していくことになりますが・・・

しかし、訪問者にとって見れば読み出すのはHTMLだけで、
(最後に<img>タグでCGIを呼び出しているが、実際に表示されるわけではないので
訪問者にとっては時間がかかったと感じることはない。)
とても早くなるわけです。

(毎回HTMLを書き換えるという作業をするため、危険性は大きくなります。)

Total:001322 Today:0002 Yesterday:0001




HALCGI



.