本日  昨日
 
03/16(Sun) 02:17

本日の訪問者数・昨日の訪問者数の作り方(Web裏技さん)
グラフィカル・アクセスカウンタ・プロV2.0からV3.0の解説に更新しました(99/02/01)

ホームページを訪れると、本日の訪問者数や昨日の訪問者数を表示したページに出会ったことはありませんか? Web裏技さんの「グラフィカル・アクセスカウンタ・プロ」は、

  • グラフィックを使ったアクセスカウンタ。
  • 累計(画像表示)のほかに、日計のカウントと昨日のカウント数(いずれも文字表示)を記録。
ができます。この日計のカウントと昨日のカウント数の記録を使った「本日の訪問者数・昨日の訪問者数」の作り方を紹介します。

作成手順を説明します。

  1. プログラムをダウンロードします.
  2. ダウンロードしたプログラムを編集します.
  3. プログラムを呼び出すHTMLファイルを編集します.
  4. プログラムとHTMファイルをサーバに転送し、実行権を設定をします.
  5. テストします。

プログラムをダウンロードします。

  1. ファイルのダウンロードの前に、あなたのパソコンにデレクトリを作ります。
    • ルートデレクトリ(index.htmを置いてある場所のことです。ホームデレクトリともいいます。)にcount、imagesの2つのサブデレクトリを作成します。(ここにファイルをダウンロードします。)

    • サーバー側にもcount、imagesというデレクトリを作成しておきます。

  2. プログラム/データの格納場所
    • pcount.pl、count.txt、day.txt、date.txt、old.txt の5つのファイルはデレクトリcountに保存します。
    • 0.gif〜9.gifの10個の数字画像データはデレクトリimagesに保存します。

  3. Web裏技さんのチャレンジCGIのコーナ「グラフィカル・アクセスカウンタ・プロ」から下記のプログラムと10個の数字画像データをダウンロードして下さい。ダウンロードのしかたはこちらです。

    • pcount.pl (スクリプト)
    • 0.gif〜9.gif (数字画像データ)

  4. つぎに、下の4つファイルをデレクトリcountに作成し値を入れます。この時改行は入れませんので注意して下さい。空のファイルの作り方はこちらです。

    • count.txt (累計カウントファイル。最初は0)
    • day.txt (日計カウントファイル。最初は0)
    • date.txt (今日の日付けを入れるファイル。今日が15日なら15をセットする)
    • old.txt (昨日のカウントファイル。空のファイル)

    <応用>現在使用中のカウンタ値(例えば1432)を継続したい場合は、count.txtの値を0ではなく1432と現在のカウンタ数を入れます。


ダウンロードしたプログラムpcount.plを編集します。

  1. 1行目 #!/usr/local/bin/perl をあなたのプロバイダの「perlのあるパス」に書き換えます。
    多くのプロバイダはこの指定で大丈夫と思いますが、うまくいかない場合はプロバイダに問い合わせて下さい。Infowebの場合は #!/usr/bin/perl になります。

  2. <応用>
    • このカウンタは、累計カウンタは画像表示、本日、昨日カウンタは文字表示になります。

    • 累計カウンタも文字表示したい時は、113,114行目をコメント行にし、119行目のコメント行をはずします。(この場合は数字画像データはダウンロードの必要はありません) 113行 foreach (0..length("$count")-1) { $img = substr($count,$_,1); 114行 print "<img src=\"$graphics$img.gif\" alt=\"$img\" border=\"0\">"; } 119行 #print $count; 方法は行の先頭に「#」を付けるとコメント行になります。

    • 累計カウンタは現在設置してるものをそのまま使い、pcount.plでは今日、昨日のカウンタのみを表示したいという場合は、113,114,119行目を全てコメント行にします。


プログラムを呼び出すHTMLファイルを編集します。

  1. pcount.pl の実行
    • index.htm の累計カウンタを表示したい場所に SSIの記述で、<!--#exec cmd="./count/pcount.pl"-->と記述します。

  2. 本日の訪問者数・昨日の訪問者数の表示
    • あなたは今日の<!--#exec cmd="cat ./count/day.txt"-->人目の訪問者です。
    • 昨日は<!--#exec cmd="cat ./count/old.txt"-->人の訪問がありました。


プログラムとHTMファイルをサーバに転送し、実行権を設定をします。

  1. index.htmをルートディレクトリにアスキーモードで転送(put)します。

  2. pcount.plとcount.txt、day.txt、date.txt、old.txt の4つのデータファイルをデレクトリcountにアスキーモードで転送(put)します。

  3. 0.gif〜9.gifの10個の数字画像データをデレクトリimagesにバイナリモードで転送(put)します。

  4. ファイルの構成と実行権

    転送が終わったら、それぞれのファイルに下の実行権を設定します。ディレクトリ count の実行権777の設定を忘れないで下さい。

    index.htm
    count(777)/----+-pcount.pl    (755)
                   +-count.txt    (666)
                   +-day.txt      (666)
                   +-date.txt     (666)
                   +-old.txt      (666)
    images/--------+-0.gif (数字画像 0)
                   +-1.gif (数字画像 1)
                   +-略
                   +-9.gif (数字画像 9)
    

テストします。

1日経てば結果を確認出来ますので、すぐに動作確認したい方以外は、ここから先のテストは要りません。1日待って確認しましょう。

  1. テストデータを転送して正常動作を確認します。
    • count.txt、day.txt、date.txt、old.txtの4つファイルを別の場所にコピーし保存します。
    • エディタでcount.txt、day.txt、date.txtを開き、「実行前の値」をセットし転送します。
    • index.htmを再読み込みし、本日の訪問者数・昨日の訪問者数が「実行後の値」になっていることを確認します。
            実行前の値                                        実行後の値
    count.txt--0     ------------------------------------------1
    day.txt----10    ------------------------------------------1
    date.txt---昨日の「日」(今日が20日なら19をセットします) ------20
    old.txt----そのまま転送します  ------------------------------10
    
  2. 正常動作が確認できたら本番データを転送します。
    • 別の場所に保存しておいたcount、day、date、oldの4つファイルを元に戻します。
    • 下記の値がセットされてることを確認し、再度転送します。
      count.txt-----0
      day.txt-------0
      date.txt------今日の「日」(今日が20日なら20)
      old.txt-------空のファイル
      

さぁ,これで完成です。index.htmを再読み込みし、SSIで記述した場所に本日の訪問者数・昨日の訪問者数が表示されれば完成です。
 
 
©1997- Kikuchisan's workshop All rights reserved //

スポンサーリンク

関連コンテンツ