/*
MYSQLデータベースアクセスカプセル化クラス
MYSQLデータアクセスメソッド、php4はmysql_で始まるプロシージャアクセスメソッドをサポートし、php5はサポートを開始しますmysqli_ で始まるメソッド。mysqli オブジェクト指向アクセス メソッド。このカプセル化クラスは、mysql_ を使用してデータ アクセスの一般的なプロセスをカプセル化します。
1. データベース mysql_connect または mysql_pconnect に接続します。
2. データベース mysql_select_db を選択します。 SQL クエリ mysql_query
4. 戻り値の処理 mysql_fetch_array mysql_num_rows mysql_fetch_assoc mysql_fetch_row etc
*/
class db_mysql
{
var $querynum = 0; // 現在のページ プロセスがデータベースにクエリを実行する回数
var $dblink; //データベース接続リソース
//リンク データベース
function connect( $dbhost,$dbuser,$dbpw,$dbname='',$dbcharset='utf-8',$pconnect=0, $halt=true)
{
$func = empty($pconnect) ? 'mysql_connect' : 'mysql_pconnect' ;
$this->dblink = @$func($dbhost,$dbpw) ; >dblink)
{
$this->halt( "データベースに接続できません!")
}
//クエリ文字セットを設定します
mysql_query("SETcharacter_set_connection={$dbcharset},character_set_results={$dbcharset) },character_set_client=binary",$this->dblink);
//データベースを選択
$dbname && @mysql_select_db($dbname,$this->dblink) ;
}
//データベースを選択
function select_db($ dbname)
{
return mysql_select_db($dbname,$this-> dblink);
//SQL クエリを実行
function query($sql)
{
$this->querynum++;
return mysql_query($sql) ,$this->dblink);
}
//接続ハンドルに関連付けられた INSERT、UPDATE、または DELETE クエリによって影響を受けたレコード行の数を返します
functionaffected_rows()
{
return mysql_affected_rows($this) ->dblink);
}
//選択クエリの結果セットにのみ有効です
function num_rows($result)
{
return mysql_num_rows($result); //単一セルのクエリ結果を取得します
function result($result,$row=0)
{
return mysql_result($result,$row)
}
//前の INSERT 操作によって生成された ID を取得します (有効な場合のみ)テーブル内の AUTO_INCREMENT ID を使用した操作の場合
function insert_id()
{
return ($id = mysql_insert_id($this ->dblink)) >= 0 $id : $this->result($this-> ? ;query("SELECT last_insert_id()"), 0);
}
//結果セットから現在の行を抽出し、キーとして数値で表される連想配列の形式で返します
function fetch_row($result)
{
return mysql_fetch_row($result);
}
//フィールド名キーで表される連想配列の形式で、結果セットから現在の行を抽出します Return
function fetch_assoc($result)
{
return mysql_fetch_assoc ($result);
}
//結果セットから現在の行を抽出し、フィールド名と数値をキーとして表す連想配列の形式で返します
function fetch_array($result)
{
return mysql_fetch_array( $result);
}
//リンクを閉じる
function close()
{
return mysql_close($this->dblink);
}
//単純なエラー HTML プロンプト メッセージを出力し、プログラムを終了する
function halt ($msg)
{
$message = "nn" ;
$message .= "
n" ; .= "
n" ;
$message .= "n" ;
$message .= "データベース エラー: ".htmlspecialchars($msg)." ;
$ message .= "n" ;
$message .= "