
[ このメッセージへの返事 ]
[ 返事を書く ]
[ home.html ]

投稿者:
68user @ mamb.cs.gunma-u.ac.jp on 98/3/09 07:36:19
In Reply to: HPカウンターについて質問!
posted by R-N @ ppp02099.omiya.alles.or.jp on 98/3/09 07:16:44
> このタイプのカウンターの作り方が載っている
> ページありませんか?
そういうwebは知りませんが、作り方を簡単に説明します。
0.gif〜9.gifまでの画像ファイルがあるとします。
で、最初に count.datには「0(改行)」という文字が入ってる
とします。
-----------------------
#!/usr/bin/perl
# ヘッダを出力
print "Content-type: image/gif\n\n";
# 現在の人数を $num に読み込む。
open(COUNT,"count.dat");
$num = <COUNT>;
chop $num;
close(COUNT);
# 画像を表示
open(IMAGE,"$num,gif");
print <IMAGE>;
close(IMAGE);
# 1増やした人数を保存
open(COUNT,">count.dat");
print COUNT $num+1."\n";
close(COUNT);
------------------------
これで9までのカウントができます。
原理的には簡単でしょ?
で、10以上になると1.gifと0.gifを横に連結した
1枚の画像を「その場で」作って出力しなければ
ならない、ってわけです。これがめんどくさいんですが、
そういうツールは探せばどこかにあります。
もちろんカウンタですから排他制御も必要ですね。

|