アクセスカウンタの設置方法

お気づきの方もおられると思うが、実は、いままで使用させていただいたアクセスカウンタが11月から使えなくなってしまった。このサイトでは、右下のほうに、

あなたは?????人目のお客様です。

ご訪問ありがとうございます。

また、いらして下さいね。

と表示しているそれである。

 

どうも、使用していた無料サーバーのドメインが消滅してしまったらしい。なので、せっかくこのサイトを訪問していただいても、そこで、読み込みか゛止まってしまうという弊害が起こっていたようである。

 

これに気がついてから、しばらくは、表示なしで運用させてもらったものの、どうも気になってしかたがない。

 

そこで、ホームページでのアクセスカウンタの表示方法を調べてみることとした。といっても、なにしろ、プログラミングには不慣れであって、なかなか、これといったものはすぐに見つけることはできなかった。

 

ようやく、あるところで、表示のアルゴリズムを説明してあるのを見つけた。

それを採用したのが、現在のページでの表示となっている。

 

簡単に説明すると、まず、次のような counter.php というファイルを準備する。

 

<?php

# file open as read-write mode

$handle = fopen("counter.txt","r+");

# file lock

flock($handle,LOCK_EX);

# read 1 line of file

$counter = fgets($handle);

# count up

$counter = $counter +1;

# file pointer to head

fseek($handle,0);

# output to file

fwrite($handle,$counter);

# release file lock

flock($handle,LOCK_UN);

# file close

fclose($handle);

echo $counter;

?>

 

また、counter.txt というファイルにはカウンタの初期値となる数字を記入しておく。

 

本文のhtmlの部分に、

 

<script type="text/javascript" src="counter.php">

<iframe src="counter.txt" height=25 width=55 frameborder=0 ><⁄iframe>

 

というような記述を行なう。

 

これで、とりあえず、アクセスカウンタを表示することができた。

 

しかし、ここで、問題発生である。

 

私は、LinuxでブラウザにFirefoxを使用している。これだと、表示はちゃんとできた。携帯電話でも、ひとまず数字の表示はできた。しかし、WindowsのInternet Explorerでは、うまく表示ができていないことがしばらくしてわかったのだ。

 

原因は、どうもiframeというコマンドの使い方にあるらしい。使用するブラウザによって、表示されるエリアが異なるようなのである。

 

というわけで、ひとまず、今回の記事は終わりとする。いまのところ、うまい解決方法が見つからないのである。

 

(2011-12-28)

 

 

P.S.

もしも、良い方法があれば試してみたいとおもっています。
ご存じの方のコメントをお待ちしています。

私も使用していますが、PHPについては以下がとても参考になります。

 

[PR]

学生のためのPHP言語 ─基礎からウェブシステムまで

つくって覚えるPHP入門

私の「PC体験記」は、こちらでご紹介しています。
↓↓↓

Footprint Annex -- PC体験記 --