ホームページ >バックエンド開発 >PHPチュートリアル >PHP 接続 mysql データベース操作 class_PHP チュートリアル
php接続mysqlデータベース操作クラス これは比較的完全な mysql 操作クラスです。昨日、mysql データベースに接続するための簡単なコードを書きました。これに比べて、これにはデータのクエリ、更新、削除などが含まれています。
phpチュートリアル接続mysqlチュートリアルデータベースチュートリアル操作クラス
これは比較的完全な mysql 操作クラスです。昨日、mysql データベースに接続するための簡単なコードを書きました。これに比べて、これにはデータのクエリ、更新、削除などが含まれています。
*/
クラスmysql{
プライベート $db_host //データベースホスト
;
; プライベート $db_user //データベース ユーザー名
プライベート $db_pwd //データベースパスワード
; プライベート $db_database //データベース名
プライベート $conn; //データベース接続識別子;
プライベート $sql; //SQL ステートメントが実行されました
private $result; // リソース識別子をクエリします
プライベート $coding; //データベースエンコーディング、gbk、utf8、gb2312
Private $show_error = true //ローカル デバッグ、エラーの出力に使用されます/**
*コンストラクター
*
* @アクセス公開
* @パラメータ文字列 $db_host データベースホスト
* @parameter string $db_user データベースユーザー名
* @パラメータ文字列 $db_pwd データベースパスワード
* @parameter string $db_database データベース名
* @パラメータ文字列 $coding コーディング
* @return void
*/
パブリック関数 __construct($db_host, $db_user, $db_pwd, $db_database, $coding){
$this->db_host = $db_host;
$this->db_user = $db_user;
$this->db_pwd = $db_pwd;
$this->db_database = $db_database;
$this->coding = $coding;
$this->connect();
}/**
*データベースへのリンク
*
* @アクセス非公開
* @return void
*/
プライベート関数 connect(){$this->conn = @mysql_connect($this->db_host,$this->db_user,$this->db_pwd);
if(!$this->conn){
// show_error がオンになっている場合、エラーが出力されます
If($this->show_error){
$this->show_error('エラー メッセージ: データベースに接続できませんでした!');
}
}if(!@mysql_select_db($this->db_database, $this->conn)){
//データベースを開けませんでした
If($this->show_error){
$this->show_error('エラー メッセージ: データベースを開けませんでした!');
}
}if(!@mysql_query("set names $this->coding")){
//エンコーディングの設定に失敗しました
If($this->show_error){
$this->show_error('エラー メッセージ: エンコーディングの設定に失敗しました!');
}
}
}/**
* 実行可能なクエリ、追加、変更、削除などの SQL ステートメント
*
* @アクセス公開
* @パラメータ文字列 $sql SQL文
* @return resource リソース識別子
*/
パブリック関数クエリ($sql){
$this->sql = $sql;
$result = mysql_query($this->sql, $this->conn);
if(!$result){
//クエリの実行に失敗し、印刷エラー
$this->show_error("間違った SQL ステートメント:", $this->sql);
}その他{
//リソース識別子を返します
$this->result = $result;
を返します }
}/**
* mysqlサーバー内のすべてのデータベースをクエリします
*
* @アクセス公開
* @return void
*/
パブリック関数 show_databases(){
$this->query("データベースの表示");
//データベースの総数を出力します
echo "既存のデータベース:" . mysql_num_rows($this->result);
エコー "
";
$i = 1;
//各データベースの名前を出力するループ
while($row=mysql_fetch_array($this->result)){
echo "$i $row[データベース]" . "
";
$i++;
}
}/**
* データベース内のすべてのテーブル名をクエリします
*
* @アクセス公開
* @return void
*/
パブリック関数 show_tables(){
$this->query("テーブルを表示");
//印刷テーブルの総数
echo "データベース {$this->db_database} には、合計 mysql_num_rows($this->result) "Table:";
があります。 エコー "
";
//配列の添字を作成し、データベース内のすべてのテーブル名をループアウトします
$column_name = "tables_in_" . $this->db_database;
$i = 1;
//各テーブルの名前を出力するループ
while($row=mysql_fetch_array($this->result)){
echo "$i $row[$column_name]" . "
";
$i++;
}
}/**
* レコードセットを取得し、配列インデックスと関連付けを取得します
*
* @アクセス公開
* @return void
*/
パブリック関数 fetch_array(){
mysql_fetch_array($this->result)を返します;
}/**
* 選択クエリステートメントを簡素化します
*
* @アクセス公開
* @parameter string $table テーブル名
* @parameter string $field フィールド名
* @return リソース
*/
パブリック関数 findall($table, $field = '*') {
Return $this->query("select $field from $table");
}/**
* 削除クエリステートメントを簡略化します
*
* @アクセス公開
* @parameter string $table テーブル名
* @parameter string $condition クエリ条件
* @return リソース
*/
パブリック関数 delete($table, $condition) {
Return $this->query("$condition の $table から削除");
}/**
* insert ステートメントを簡略化します
*
* @アクセス公開
* @parameter string $table テーブル名
* @parameter string $field フィールド名
* @parameter string $value 値を挿入します
* @return リソース
*/
public function insert($table, $field, $value) {
Return $this->query("$table ($field) 値に挿入 ('$value')");
}/**
* update insert ステートメントを簡素化します
*
* @アクセス公開
* @parameter string $table テーブル名
* @parameter string $update_content 更新されたコンテンツ
* @パラメータ文字列 $condition 条件
* @return リソース
*/
パブリック関数 update($table, $update_content, $condition) {
Return $this->query("update $table set $update_content where $condition");
}/**
* 前の挿入操作で生成された ID を取得します
*
* @アクセス公開
* @return integer
*/
パブリック関数 insert_id() {
mysql_insert_id() を返します;
}/**
* 結果セットの数を計算します
*
* @アクセス公開
* @return integer
*/
パブリック関数 num_rows() {
mysql_num_rows($this->result)を返します;
}/**
* フィールド数とフィールド情報をクエリします
*
* @アクセス公開
* @parameter string $table テーブル名
* @return void
*/
パブリック関数 num_fields($table) {
$this->query("select * from $table");
エコー "
";
//フィールドの数を出力します
echo "フィールドの数:" . $total = mysql_num_fields($this->result);
echo "";<br> //mysql_fetch_field() 関数は結果セットからカラム情報を取得し、それをオブジェクトとして返します。 <br> for ($i = 0; $i Print_r(mysql_fetch_field($this->result, $i));<br> }<br> echo "";
エコー "
";
}/**
* SQL文のエラーメッセージを出力
*
* @アクセス公開
* @parameter string $message プロンプトメッセージ
* @return void
*/
パブリック関数 show_error($message='',$sql=''){
echo "<フィールドセット>";
echo "
";
echo "";";
//印刷エラーの理由
echo "エラーの理由:" . mysql_error() . "
";
//エラーメッセージを出力します
//mysql_error() 関数は、前の mysql 操作によって生成されたテキスト エラー メッセージを返します。
echo "";";
echo "" . echo "
//エラーSQL文を出力します
echo "" . echo "
echo "";
}
}
//使い方
$mysql = 新しい mysql($dbhost, $dbuser, $dbpwd, $dbname, $coding);
?>
http://www.bkjia.com/PHPjc/630818.html