画像表示カウンター

 前に紹介した「割と正確なカウンター」を、画像表示のカウンターに変えて見ましょう。データファイルへの保存までは一緒ですが、取得した整数データを画像ファイルにそれぞれ関連付けて、画像を表示出来るようにしました。では、以下に変更点を見てみましょう。

<?php PHP開始の合図。
//=================クッキーの書き込み==================
$date_now = date("Y/m/d"); //日付の取得
$cookie = $date_now;
setcookie("G_Access",$cookie);
保存するクッキー名をちょっと変更します。他のスクリプトと重複するといけないので(^^ゞ
?> PHP終了の合図。
<HTML>
<HEAD>
<TITLE>Accessサンプルページ</TITLE>
</HEAD>
<BODY>
<P ALIGN="CENTER"><FONT SIZE="6" COLOR="green">Accessサンプルページ</FONT></P>
<P>
<HR ALIGN="CENTER">
</P>
<P ALIGN="CENTER">あなたは、
ここは、HTML部分です。
<?php PHP開始の合図。
//========================メイン処理========================
$data_file = './access.dat'; //データファイル
$fp = fopen("$data_file", "r+");
$cnt_num = fgets($fp, 64);
if($G_Access != $date_now){
 $cnt_num++;
 fseek($fp, 0);
 flock($fp,2);
 fwrite($fp, $cnt_num);
}
fclose($fp);
従来と同じ。
$f_pass = './a_gif';
for($i = 0; $i < strlen($cnt_num); $i++)
 $value[ ] = substr($cnt_num, $i , 1);
for($j = 0; $j < count($value); $j++)
 echo "<img src=$f_pass/" . $value[$j] . ".gif>";
まず、画像フォルダへのパスを指定します。取得したカウントデータ$cnt_numを1文字ずつ配列$valueに格納し、その配列データ(数字1文字)を取り出しては、画像ファイル(0.gif 〜9.gif)に関連付けて出力します。
?> PHP終了の合図。
番目の訪問者です。<BR><BR></P>
<P ALIGN="CENTER"><FONT COLOR='blue'>これはクッキー機能を使った、割と正確な訪問者数をカウントするカウンターです。<BR><BR>
訪問者がブラウザを一旦閉じない限り、何度ホームページを開いてもカウントしません。<BR><BR>
もちろん、更新ボタンを押してもカウントしないので、大丈夫!(^o^)丿</FONT></P>
</BODY>
</HTML>
ここは、HTML部分です。

 *上の内容をこのまま複写しても動きません。何故なら、表示を見やすくする為コード中に全角スペースが入っているからです。実際にお使いになる時は、この点を修正してからサーバにアップして下さい。

strlen( )関数

書式: int strlen ( string str )

用法: 引数str で渡された文字列の長さを取得します。str の長さを返します。

substr( )関数

書式: int substr ( string str, int start [ , int length ] )

用法: 引数string の中で引数start で指定された位置からlength バイト分の文字列を返します。start が正の場合、返される文字列はstring の0から数えて、start 番目から始まる文字列となります。

HOME