Cookieカウンター

<Cookieカウンターの作り方>

このカウンターは訪問者一人一人を個別にカウントして訪問回数を表示します
グラフィックカウンターにするのは難しいので、HTML文で出力する見本です。
作り方は
@サンプルプログラムをコピーし、ID等を自分のものに書き換える
Aファイル名の拡張子は「.cgi」として保存する
BftpはASCII形式で行なう
Cサブミットを「755」にセットする
DHTML文の<A HREF=>で呼び出す (<FRAME>を使ったページを作れば自動起動も出来ます) a href="counterQ.cgi">あなたの訪問回数確認</a> JavaScript編

JavaScriptグラフィックカウンター編

<CGI用サンプルプログラム>

#!/usr/local/bin/perl5 #一行目は、プロバイダーにperlのあるディレクトリーを確認して書き換えること ############### Set-Cookieヘッダ用に準備する。################## # = 以降を(自分の内容に書き換えること) # $cookie = "Q_COUNTER"; #キーワード $cookieExpires = "Friday, 31-Dec-1999 00:00:00 GMT"; #有効期限 $cookiePath = "/~qpon"; #ID $cookieDomain = "www2a.biglobe.ne.jp"; #URL ############### 環境変数HTTP_COOKIEを処理する ################# &cookieCutter; # 個人別アクセス数を調べて、数を1増やす print "Content-type: text/html\n"; # Content-typeヘッダを出力 &SetCookie; # Set-Cookieヘッダを出力 print "\n"; # ヘッダの終わりを出力 ############### ブラウザに表示する内容を出力 ################# print <<"EOM"; <HTML> <HEAD> <TITLE>HTTP Cookie</TITLE> </HEAD> <BODY> EOM print "あなたの訪問は[ "; print $cookieJar{$cookie}; print " ]回目です。<BR>\n"; print <<"EOM"; </BODY> </HTML> EOM ############### 環境変数HTTP_COOKIEを処理するサブルーチン ########## sub cookieCutter { local($key,$value); foreach (split(/; /,$ENV{'HTTP_COOKIE'})) { ($key,$value) = split(/=/); if ($key eq $cookie) { $cookieJar{$key} = $value; } } # 個人別のアクセス数を1増やす $cookieJar{$cookie}++; } ############### Set-Cookieヘッダを出力するサブルーチン ############# sub SetCookie { print "Set-Cookie: "; print "$cookie=$cookieJar{$cookie}; "; print "expires=$cookieExpires; "; print "path=$cookiePath; "; print "domain=$cookieDomain\n"; }
QPONホームページに戻る