Sponsored Link
		■■■■■■■■■■■■■■■■■■■■

			 CGI講座・リプレイ
		  -最終講- カウンタ作成への道

		■■■■■■■■■■■■■■■■■■■■


■1、カウンタの動作■

	いよいよ今までの学習内容を駆使してカウンタの作成に入る。
	まずはカウンタの動作を考えてみたい。

	カウンタの動作は誰かがそのカウンタを見ると1を加算し、
	今まで見に来た人たちの累計を表示する、という所だろう。
	これをもう少し細かく分けると

		1.今までの累計記録ファイルを開きデータを読み込む
		2.読み込んだデータに1を加算
		3.加算した結果を表示
		4.表示結果を累計記録ファイルに上書きする

	以上の1〜4の動作を繰り返しているのがアクセスカウンタである。

■2、Perlに翻訳!!■

	上記の一連の命令をPerlで記述するとどうなるだろうか?

	まず1と4から第14講で学んだ
	「外部ファイルの操作」が必要であることがわかる。
	外部ファイルの名前を「count.dat」とすれば
	手順どおりに進めるため4の操作についてはまた後ほど書くとして、

	1はデータ読み込みオープンなので

		open(FH,"count.dat");
		$total=;
		close(FH);

	と記述し、変数$totalにファイル内に記録されている
	累計を読み込むようにする。

	なお、count.datの初期値は各自で好きな数を設定できるが、
	最初は「0」にしておくのが普通だろう。

	次に2を見ると変数に1を加算する必要が考えられる。
	これは

		$total=$total + 1;

	でもいいが、第12講および第13講で

		$total++;

	という「インクリメント演算子」が登場しているので
	これを使うといいだろう

	3の結果表示についてはこれは説明はいらないだろう。

		print "あなたは$total人目の訪問者です";

	この変数の使い方については第8講で説明しているので
	忘れた人はそちらを参照してほしい。

	そして最後の4の操作はファイル書き込みオープンとなる

		open(FH,">count.dat");
		print FH $total;
		close(FH);

	読み込むファイル名の前に「>」をつけると
	データの上書きができるようになる。
	また、外部ファイルに変数の値を書き込むときは
	
print ファイルハンドル $変数名;
のように記述する。 ちなみに「>>」にすれば追加書き込み、 すなわち元あるデータを残したまま データを追加することができるが、 これは注文フォームや掲示板などで使う機能である。 以上のようにしてカウンタを作ることができる。 ■3、カウンタの改造■ こうして本講座の最終目標であるカウンタを作成したが、 完成品を見ると 良く言えばシンプル、悪く言えばそっけないものである そこでテキストの代わりに数字の書かれた画像ファイルを使えば 見栄えのいいグラフィカルカウンタを作ることができるが、 本講座はかつて行われたCGI講座の「リプレイ」であり、 そして内容はここまでで終わったので 本講座はこれにて終了することにする。 CGI講座・リプレイ −完− --------------------------------------------------------------------- 発行人: 塚田 伊助 発行所: 伊助の鍛錬場 http://isukenet.s20.xrea.com/ 連絡先: isuke_tukada@hotmail.com
もどる