PHP+MySQLホームページアクセス解析ツール

製作: 小川 邦久

ご意見・ご感想

プライバシーポリシー

Copyright (C) 2010 KUNISAN.JP.
All Rights Reserved.


各種設定

ツールを使いこなす上での各種設定について説明します。


管理画面トップの表示設定編集
管理画面トップの表示設定編集 管理画面のデフォルト状態では、設置方法ページのステップ3のコード中に指定したIDが、各サイトのタイトルとして表示されています。また、複数サイトを管理している場合には、新たにコードを設置したサイトから先に表示されるようになっています。
管理画面トップの【テーブル表示設定編集】をクリックすると、サイト一覧が表示されます。さらにIDをクリックすると、管理画面トップの各サイトの表示設定を編集することができます。表示・非表示、表示順、タイトル、URL、開設日、AC(アクセス解析コード)設置日などを設定できる他、アラームページ(アクセスが合った場合に「XX時間前」にアクセスが合ったことを知らせる機能)、アーカイブ参照優先の有無、付加情報(サイトに関わるリンクなど)も指定できます。


管理画面トップにタイトルロゴ、リンク、メモなどを追加
管理画面トップにタイトルロゴ、リンク、メモなどを追加 ファイルセットadminフォルダ中のindex.phpファイルを直接編集します。22行目にタイトル用のイメージタグを置いたり、サイト管理用リンク(例: phpMyAdminのアドレスなど)を設定したりすることができます。
また、93行目以降に管理上のメモなどを書きこむこともできます。
ホームページ管理がしやすいようにカスタマイズしてみてください。


管理画面トップのグラフ設定
管理画面トップのグラフ設定 ファイルセットadminフォルダ中のmodule_connection.phpファイルで管理画面トップのグラフ設定ができます。
デフォルトでは7日前までのグラフが表示されますが、6行目の数字を変更することで日数を増やしたり減らしたりすることができます。
また、各サイトのグラフは500ピクセルが上限となっており、デフォルトでは1UV=1ピクセルで、500UVで上限に達して、それ以降はグラフは伸びずに数字が赤い文字で表示されるようになります。9行目の数値を変更することによりグラフの尺度を変えられるので、閲覧者が多い場合には小さめの数字、閲覧者が少ない場合には大きめの数字を取るなどして調節してください。同様に「全体のグラフ」も12行目の数字を変更することで調整できます(こちらは800ピクセルが上限です)。


データの自動アーカイブと自動削除
データの自動アーカイブと自動削除 データ量が増えてくると、アクセスログ蓄積やデータ表示・グラフ表示などでもサーバーの負荷が高まります。サーバーの負荷が大きく、運用に支障が出る可能性がある場合には、データの自動アーカイブまたは自動削除を設定するようにします。また、データベース容量が限られているような環境では、データの自動削除設定は必須となります。
ファイルセットcounterフォルダ中のmodule_connection.phpファイルの6行目で自動アーカイブ設定、9行目で自動削除設定を行うことができます。どちらもデフォルトでは「0」となっており、1つのテーブルにデータが蓄積されて、古いデータも削除されない形になっています。
自動アーカイブ化することで、データ蓄積用のアクティブテーブル(新しいデータ)と参照用のアーカイブテーブル(古いデータ: テーブル名"zzz_archive_ID名")に分けられて負荷が分散されます。定期的にアクティブテーブルの古いデータが、アーカイブテーブルに移行されます。
自動削除処理では古いデータは完全に削除されますが、データがアーカイブ化されている場合には、アーカイブテーブルの古いデータも同時に削除されるので、サーバーの負荷やデータベース容量に合せて日数を調節してください。
なお、自動アーカイブも自動削除も24時間に1回の頻度で処理が行われます。


アクセスカウンターの設置
アクセスカウンターの設置 アクセスカウンター用APIを使用することにより、ホームページにアクセスカウンターを設置することができます。
設置方法ページのステップ2でデータ蓄積用のプログラムを設置しましたが、同じフォルダにアクセスカウンター用APIプログラム"api.php"があります。ここにサイトIDをパラメーターとして付けてリクエストすることで、そのサイトのUV(ユニークビジター)値を得ることができます。
例えば「http://abc.jp/counter/api.php」に対して、「sample」というIDをパラメーターとしてリクエストを出し、帰ってきたUV値を画面にテキスト表示するサンプルプログラム(PHP)を下記に示します。

<?php
//リクエスト
$count = file_get_contents('http://abc.jp/counter/api.php?ID=sample');
//カウンター表示(テキスト)
print $count;
?>
続いてGIF画像で数値を表示するサンプルプログラム(PHP)です。別途、"0.gif"、"1.gif"、"2.gif"...の画像ファイル一式を用意してください。
<?php
//リクエスト
$count = file_get_contents('http://abc.jp/counter/api.php?ID=sample');
//カウンター表示(GIF)
$digi = 100000;
for ($i = 0; $i < 6; $i++) {
	$hyoji = floor($count/$digi);
	$count = $count - $digi * $hyoji;
	$digi = $digi / 10;
	print '<img src="'.$hyoji.'.gif">';
}
?>
HTMLファイルにアクセスカウンターを表示するには、上記のプログラムをインラインフレーム(iframe)を用いるなどして組み込むようにします。

フォーム入力データなどカスタマイズデータの取得
フォーム入力データなどカスタマイズデータの取得 ファイルセットの「HTML用コード.txt」に収録されているコード中の、変数D3、D4にデータを受け渡す形に設定します。このデータは詳細画面でそれぞれEX1、EX2欄に表示され、件数を基にランキングの集計も可能です。PHPのprint文を利用したサンプルコードを下記に示します。

print '
<script type="text/javascript"><!--//
ID = "SAMPLE_ID" //●●サイトID(全角文字は使えません)
D1 = document.referrer;
D2 = location.href;
D3 = "'.$category.'"; //ドロップダウンリストで選択されたカテゴリー
D3 = encodeURIComponent(D3);
D4 = "'.$search_word.'"; //テキストボックスに入力された検索ワード
D4 = encodeURIComponent(D4);
document.write("<img src=\"http://XXXXXX.com/counter/?V=2&&&ID="+ID+"&&&D1="+D1+"&&&D2="+D2+"&&&D3="
+D3+"&&&D4="+D4+"\" width=\"1\" height=\"1\"><br>"); //●●カウンター場所指定
//-->
</script>
';
PHPだけではなく、PerlやJavaScriptのデータ受け渡しも可能です。