ポンクソフト

画像カウンタ - PHPでアクセスカウンタ&解析

前ページ PHPでアクセスカウンタ&解析 TOP 次ページ

目次

  1. PHPでアクセスカウンタ&解析
  2. テキストカウンタ
  3. 画像カウンタ
  4. アクセス解析1
  5. アクセス解析2
  6. アクセス解析3
  7. アクセス解析4

画像カウンタ

画像で表示するカウンタを作成します。

ページの作成

まずカウンタを表示するページを作成します。page1.php を開き
あなたは<?php require "counter1.php" ?>人目のお客様です。
の部分を
あなたは<?php require "counter2.php" ?>人目のお客様です。
に書き換えて「page2.php」という名前でサーバにアップしてください。

カウンタプログラムの作成

次にアクセスカウンタのプログラムを作成します。以下のソースを入力してください。
<?php
// アクセスカウンタ2

$fp = @fopen("counter2.txt", "r+") or die("Counter Error");
flock($fp, LOCK_EX);
$count = fgets($fp);
$count++;
rewind($fp);
fputs($fp, $count);
fclose($fp);

$keta = 8;  // カウンタの桁数
$str = str_pad($count, $keta, '0', STR_PAD_LEFT);
for ($i = 0; $i < $keta; $i++) {
  $num = substr($str, $i, 1);
  print "<img src='img/$num.gif'>";
}
?>
入力が終わったら「counter2.php」という名前でサーバにアップします。

カウンタファイルの作成

次に先ほどと同じくアクセスカウントを保存するためのファイルを作成します。新規テキストファイルを作成し
0
とだけ記述して(改行は入れない)、「counter2.txt」という名前でサーバにアップします。その後、FTPソフトの「属性変更」から「その他」に書込許可属性を与えます。

カウンタ画像の作成

まずサーバに img ディレクトリを作成します。その後、数字の 0 ~ 9 を画像で書いてそれぞれ 0.gif ~ 9.gif という名前で img ディレクトリにアップします。以下は画像の例です。

img/0.gif 0.gif
img/1.gif 1.gif
img/2.gif 2.gif
img/3.gif 3.gif
img/4.gif 4.gif
img/5.gif 5.gif
img/6.gif 6.gif
img/7.gif 7.gif
img/8.gif 8.gif
img/9.gif 9.gif

実行

以上の用意ができたら、page2.php をブラウザでアクセスしてみてください。リロードするたびに画像カウンタが増えれば正常です。

counter2.php ソースの解説

$fp = @fopen("counter2.txt", "r+") or die("Counter Error");
flock($fp, LOCK_EX);
$count = fgets($fp);
$count++;
rewind($fp);
fputs($fp, $count);
fclose($fp);
上記の部分は counter1.php とファイル名を除いて全く同じです。counter2.txt のカウントをひとつ増やして書き込みしています。
$keta = 8;
$keta は表示する桁数です。
$str = str_pad($count, $keta, '0', STR_PAD_LEFT);
カウンタを 8 桁まで 0 で埋めて $str に代入しています。
for ($i = 0; $i < $keta; $i++) {
  $num = substr($str, $i, 1);
  print "<img src='img/$num.gif'>";
}
$num にはループごとに $str の先頭の文字から順番に入ります。例えば $str が「12345678」だった場合、$num には 1, 2, 3, 4, 5, 6, 7, 8 が順に入ることになります。次の print 文で $num に対応する画像タグを出力しています。
substr 関数は文字列から部分文字列を取得する関数です。
substr(文字列, オフセット, 長さ)
「文字列」の「オフセット(先頭は 0)」の位置から「長さ」の分だけ切り出して戻します。
前ページ PHPでアクセスカウンタ&解析 TOP 次ページ
このエントリーをはてなブックマークに追加 そっか0

このページに関するコメントをどうぞ

お名前:


wentgt
すべての
calltrackingsource.com 13s.info nhadeptrongoi.com kashinvestment.com csgo-butterfly.com anklebitergaming.com
csfire.pro envelopesstore.com ginastarmusic.com mp3-teca.com csgoodstakes.com
went.black 2pay4win.com appliancerepairsnearme.com oferta-netflix.com
techitax.com csprey.com lightshadowspace.com csboom.pro
投稿者
2017/01/25 00:08

初心者
メールソフトの設定ってどうやるのですか...
gmailに送りたいのですが...
2017/01/24 21:33

enveloptf
すべての
calltrackingsource.com 13s.info nhadeptrongoi.com kashinvestment.com csgo-butterfly.com anklebitergaming.com
csfire.pro envelopesstore.com ginastarmusic.com mp3-teca.com csgoodstakes.com
went.black 2pay4win.com appliancerepairsnearme.com oferta-netflix.com
techitax.com csprey.com lightshadowspace.com csboom.pro
投稿者
2017/01/24 21:23

paywinlv
すべての
calltrackingsource.com 13s.info nhadeptrongoi.com kashinvestment.com csgo-butterfly.com anklebitergaming.com
csfire.pro envelopesstore.com ginastarmusic.com mp3-teca.com csgoodstakes.com
went.black 2pay4win.com appliancerepairsnearme.com oferta-netflix.com
techitax.com csprey.com lightshadowspace.com csboom.pro
投稿者
2017/01/24 18:04

anklebitcw
すべての
calltrackingsource.com 13s.info nhadeptrongoi.com kashinvestment.com csgo-butterfly.com anklebitergaming.com
csfire.pro envelopesstore.com ginastarmusic.com mp3-teca.com csgoodstakes.com
went.black 2pay4win.com appliancerepairsnearme.com oferta-netflix.com
techitax.com csprey.com lightshadowspace.com csboom.pro
投稿者
2017/01/24 11:35

butterfxa
すべての
calltrackingsource.com 13s.info nhadeptrongoi.com kashinvestment.com csgo-butterfly.com anklebitergaming.com
csfire.pro envelopesstore.com ginastarmusic.com mp3-teca.com csgoodstakes.com
went.black 2pay4win.com appliancerepairsnearme.com oferta-netflix.com
techitax.com csprey.com lightshadowspace.com csboom.pro
投稿者
2017/01/24 03:37

nhadeptronmr
すべての
calltrackingsource.com 13s.info nhadeptrongoi.com kashinvestment.com csgo-butterfly.com anklebitergaming.com
csfire.pro envelopesstore.com ginastarmusic.com mp3-teca.com csgoodstakes.com
went.black 2pay4win.com appliancerepairsnearme.com oferta-netflix.com
techitax.com csprey.com lightshadowspace.com csboom.pro
投稿者
2017/01/23 20:39

nhadeptronlv
すべての
calltrackingsource.com 13s.info nhadeptrongoi.com kashinvestment.com csgo-butterfly.com anklebitergaming.com
csfire.pro envelopesstore.com ginastarmusic.com mp3-teca.com csgoodstakes.com
went.black 2pay4win.com appliancerepairsnearme.com oferta-netflix.com
techitax.com csprey.com lightshadowspace.com csboom.pro
投稿者
2017/01/23 15:24

sinforve
すべての
calltrackingsource.com 13s.info nhadeptrongoi.com kashinvestment.com csgo-butterfly.com anklebitergaming.com
csfire.pro envelopesstore.com ginastarmusic.com mp3-teca.com csgoodstakes.com
went.black 2pay4win.com appliancerepairsnearme.com oferta-netflix.com
techitax.com csprey.com lightshadowspace.com csboom.pro
投稿者
2017/01/23 12:46

calltrackju
すべての
cbbnews24.com
csgobooms.com
csgojoybets.com
incareersjobs.com
stcmidtenn.org
thewill.in
sakirkaratas.com
apexturnkey.in
medray.in
applevalleymarket.com
b8b90.com
danhhotgay.com
cstopstake.com
nsm.org.in
vov-fc.com
csgohugepots.com
eaglesapparelshop.com
mymobileappmobiappssub2016.com
sbppl.org
gracedental.in
kehulin.com
cheappricetoyou2015.com
vamortgageloantexas.com
doitacdoanhnghiep.com
techimanage.com
elmi.co
upea.in
esncordoba.org
goal888cash.com
fullebookz.com
2winde222.com
投稿者
2017/01/23 09:37

残りを読む »