#!/usr/bin/perl
# ↑のパスは設置するサーバーの環境に合わせて変更してください。

#〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
# まろやかテキストカウンター Ver 1.00 (2008/7/24 Update)
# Copyright(c) 2008 tisa All rights reserved.
# 
# URL  : http://mcgi.jpn.ch/
# MAIL : ari_tisa9@ahsic.com
# 
# スクリプトの呼び出し方法
# SSIの場合：<!--#exec cgi="./mrc.cgi" -->
# JavaScriptの場合：<script type="text/javascript" src="./mtc.cgi"></script>
#〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
#### ユーザー設定 ####
# 出力モード 0:SSI 1:JavaScript
$mode = 1;

# 桁数
$column = 8;

# タグ（数字に付けるタグ）※終了タグがあるものだけ有効
# 例：$tag = '<font color="#CC3333"></font>';
$tag = '';

#### ユーザー設定終わり ####
#〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
#### ファイルパス ####
$file = "./count.dat";

#〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
####■ 以下スクリプト ■####
#〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜

	# カウントファイル読み込み
	open(FILE, "+<$file");
		flock(FILE, 2); # ロック
		$count = <FILE>;
		$count++; # 数を足す
		seek FILE, 0, 0; # ロック解除
		print FILE $count;
	close(FILE);

	# 桁数
	$count = sprintf("%0$column\d", $count);

	# タグ
	$tag =~ s/><\//>$count<\//;
	$count = $tag if ($tag);

	# 出力
	if ($mode) {
		# JavaScript
		print "Content-type: text/javascript\n\n";
		print "document.write('$count');";
	} else {
		# SSI
		print "Content-type: text/html\n\n";
		print $count;
	}

exit;
