ソース
[E-Mail]
1999/10/25(月) 16:41:48
主に改造したいのが、「KENT WEB」の
「COSMO NAVI」なのですが・・・・
http://cgi.tako.ne.jp/~morisen/TEST/navi.txt
これにカウンター機能を
付けようとして、またまた「KENT WEB」の「G-LIGHT」
http://cgi.tako.ne.jp/~morisen/TEST/glight.txt
のソースを取り出して、切ったりくっつけたりしました。
そうしたら、オンライン上に立ち上げた際に、
Content-type: text/html
---------------------------
ERROR !
Can't create tempfile
---------------------------
というようなエラーが出てしまいました。
ちなみに、「COSMO NAVI」に追加した機能は、
上から・・・・・
## ---- <カウンター設定> -------------------- #
$counter = 1; # ミニカウンタの有無 (0=no 1=テキスト 2=GIF画像)
$mini_fig = 5; # ミニカウンタの桁数
$cnt_color = "#DD0000"; # テキストのとき:ミニカウンタの色
$gif_url = "."; # GIFのとき :画像までのディレクトリ
$mini_w = 8; # 〃 :画像の横サイズ
$mini_h = 12; # 〃 :画像の縦サイズ
$cntfile = './count.dat'; # カウンタファイル
ヘッダーの代入直後に(&header;)
# カウンタ処理
if ($counter) { &counter; }
を・・・・・
一番後尾に、
## --- カウンタ処理
sub counter {
# カウントファイルを読みこみ
open(NO,"$cntfile") || &error("Can't open $cntfile",'0');
$cnt = <NO>;
close(NO);
# 閲覧時のみカウントアップ
if ($FORM{'mode'} eq '') {
# カウントアップ
$cnt++;
# テンポラリーファイルを定義
$prono = "$$";
if ($prono eq "") {
srand;
$prono = 1000000000000000 * rand;
}
$cnt_temp = "$lock_dir\/$prono\.tmp";
# テンポラリーファイルを作成
open(TMP,">$cnt_temp") || &error("Can't create tempfile",'0');
print TMP $cnt;
close(TMP);
# パーミッションを666に
chmod (0666,"$cnt_temp");
# リネームする
rename($cnt_temp,$cntfile);
# もしテンポラリーファイルが残っていたら削除
if (-e $cnt_temp) { unlink($cnt_temp); }
}
# 桁数調整
while(length($cnt) < $mini_fig) { $cnt = '0' . "$cnt"; }
@cnts = split(//,$cnt);
print "<table border=0 align=left><tr><td>\n";
# GIFカウンタ表示
if ($counter == 2) {
foreach (0 .. $#cnts) {
print "<img src=\"$gif_url/$cnts[$_]\.gif\" alt=\"$cnts[$_]\" width=\"$mini_w\" height=\"$mini_h\">";
}
# テキストカウンタ表示
} else {
print "<font color=$cnt_color face=\"verdana,Times New Roman,Arial\">$cnt</font>";
}
print "</td></tr></table>\n";
}
を、そのまんまいじらず、ボコボコと組み込んでみました。
不味いところが有ったら教えてください。
よろしくお願いします m(_ _)m。