アットウィキロゴ
ruka_hy @wiki
掲示板 掲示板 ページ検索 ページ検索 メニュー メニュー

ruka_hy @wiki

課題1 ( アクセスカウンタ )

最終更新:

ruka_hy

- view
管理者のみ編集可

アクセスカウンタをDBから表示


ブラウザ表示



HTML内書込み部分

  • HTML内からPHPソースを呼び出す記述をする
+ ソースコード
<SCRIPT 
	language="javascript"
	type="text/javascript"
	src="ac.php">
</SCRIPT>

+ 説明
  • src : PHPのソース名を指定


  • 最終的なソース
+ ソースコード
<HTML>
<HEAD>
<META http-equiv="Content-type" content="text/html; charset=euc-jp" />
<TITLE>アクセスカウンタ</TITLE>
</HEAD>
<BODY>
<!-- 書き込み部分 -->
<SCRIPT 
	language="javascript"
	type="text/javascript"
	src="ac.php">
</SCRIPT>
<!------------------>
</BODY>
</HTML>


PHP部分 (ac.php)

  • HTMLと同じ文字コードで保存する
+ 文字コード例
  • SHIFT-JIS
  • EUC-JP
  • UTF-8

  • MySQLのDBへ接続する
+ テーブルサンプル
  • テーブル名 : access_ac
  • 列名     : access_count int(11)

+ ソースコード
<?
	# +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	# 接続
	# +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	$dbHandle = mysql_connect( "localhost", "ユーザー名", "パスワード" );
	$db = "データベース名";
 
	$sql = "select * from `テーブル名`";
?>

  • DBのアクセス数を1増やす
+ ソースコード
<?
	# +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	# BD更新
	# +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	$Query = "update `access_ac` set access_count = access_count + 1";
	$Column = mysql_db_query($db, $Query);
?>

  • DBから値を取得し、表示の準備をする
+ ソースコード
<?
	# +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	# 表示
	# +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	$Query = "select * from `access_ac`";
	$Column = mysql_db_query($db, $Query);
	$row = mysql_fetch_array($Column);
 
	$str = "アクセス数 : ".$row[0];
?>

  • JavaScriptで書き出しをする
+ 説明
  • これはHTMLでの表示(受け取り)がJavaScriptのためである

+ ソースコード
document.write( "<SPAN><?= $str ?></SPAN>" );

  • 最終的なソース
+ ソースコード
<?
	header( "Content-Type: text/javascript; Charset=shift_jis" );
	header( "Expires: Wed, 31 May 2000 14:59:58 GMT" );
 
	# +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	# 接続
	# +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	$dbHandle = mysql_connect( "localhost", "ユーザー名", "パスワード" );
	$db = "データベース名";
 
	$sql = "select * from `board3` where board_id = 2";
 
	# +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	# BD更新
	# +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	$Query = "update `access_ac` set access_count = access_count + 1";
	$Column = mysql_db_query($db, $Query);
 
	# +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	# 表示
	# +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	$Query = "select * from `access_ac`";
	$Column = mysql_db_query($db, $Query);
	$row = mysql_fetch_array($Column);
 
	$str = "アクセス数 : ".$row[0];
 
	mysql_free_result($Column);
	mysql_close($dbHandle);
?>
 
	document.write( "<SPAN><?= $str ?></SPAN>" );
 
最近更新されたスレッド
ウィキ募集バナー