ホームページ  >  記事  >  バックエンド開発  >  php mysqlデータベース操作class_PHPチュートリアル

php mysqlデータベース操作class_PHPチュートリアル

WBOY
WBOYオリジナル
2016-07-21 15:52:14765ブラウズ

コードをコピーします コードは次のとおりです:

/*
* mysql数据库 DB类
* @package db
* @author yytcpt(無影)
* @version 2008-03-27
* @copyrigth http://www.d5s. cn/
*/
class db {
var $connection_id = "";
var $pconnect = 0;
var $shutdown_queries = array();
var $queries = array();
var $query_id = "";
var $query_count = 0;
var $record_row = array();
var $failed = 0;
var $halt = "";
var $query_log = array();
function connect($db_config){
if ($this->pconnect){
$this->connection_id = mysql_pconnect($db_config["ホスト名"], $db_config["ユーザー名"], $db_config["パスワード"]);
}else{
$this->connection_id = mysql_connect($db_config["ホスト名"], $db_config["ユーザー名"], $db_config["パスワード"]);
}
if ( ! $this->connection_id ){
$this->halt("MySQL Server に接続できません");
}
if ( ! @mysql_select_db($db_config["database"], $this->connection_id) ){
$this->halt("MySQL データベースに接続できません");
}
if ($db_config["charset"]) {
@mysql_unbuffered_query("SET NAMES '".$db_config["charset"]."'");
}
trueを返します。 { >接続ID);
$this->queries[] = $query_id;
if (! $this->query_id ) {
$this->halt("查询失败:n$query_id");
}
$this->query_count++;
$this->query_log[] = $str;
return $this->query_id; { );
}
//从结果集中取得一行作為关联数组
function fetch_array($sql = ""){
if ($sql == "") $sql = $this->query_id;
$this->record_row = @mysql_fetch_array($sql, MYSQL_ASSOC);
return $this->record_row;
}
function shutdown_query($query_id = ""){
$this->shutdown_queries[] = $query_id;
}
//結果セットの行の数を取得し、挿入、更新、または削除のみを取得しますconfunce影響_rows() "") $query_id = $this->query_id;
return @mysql_num_rows($query_id); }
//前のページに戻る MySQL 操作のエラー メッセージの数値エンコード
function get_errno(){ $this ->errno = @mysql_errno($this->connection_id); //前の INSERT 操作によって生成された ID を取得します
function insert_id(){
return @mysql_insert_id($this->connection_id . );
}
//クエリ数を取得する
function query_count() {
return $this->query_count;
}
/ / MySQL 接続を閉じる
function close_db(){
if ( $this-> connection_id ) return @mysql_close( $this->connection_id );
}
//MySQL データベース内のテーブルをリストする
function get_ table_names(){
global $db_config["database" ]);
$num_tables = @mysql_numrows($result);
for ($i = 0; $i $tables[] = mysql_tablename($result, $i); / /結果セットから列情報を取得してオブジェクトとして返し、すべてのフィールドを取得します。
//错误示唆
function halt($the_error=""){
$message = $the_error."
rn";
$message.= $this->get_errno() 。 "
rn";
$sql = "INSERT INTO `db_error`(pagename, errstr, timer) VALUES('".$_SERVER["PHP_SELF"]."', '".addslashes($message)."', ".time() .")";
@mysql_unbuffered_query($sql);
if (DEBUG==true){
echo "MySQL 数据库错误";
echo "< /head>rn";
echo "rn";
echo "
rn";
echo "rn";
echo "
rn";
終了します。
}
}
function __destruct(){
$this->shutdown_queries = array();
$this->close_db();
}
function sql_select($tbname, $where="", $limit=0, $fields="*", $orderby="id", $sort="DESC"){
$sql = "SELECT "。 $fields." FROM `".$tbname."` ".($where?" WHERE ".$where:"")." ORDER BY ".$orderby." ".$sort.($limit ? " limit ".$limit:"");
$sql を返す;
}
functionsql_insert($tbname, $row){
foreach ($row as $key=>$value) {
$sqlfield .= $key.",";
$sqlvalue .= "'".$value."',";
}
return "INSERT INTO `".$tbname."`(".substr($sqlfield, 0, -1).") VALUES (".substr($sqlvalue, 0, -1).")";
}
function sql_update($tbname, $row, $where){
foreach ($row as $key=>$value) {
$sqlud .= $key."= '".$value."', ";
}
return "UPDATE `".$tbname."` SET ".substr($sqlud, 0, -1)." WHERE ".$where;
}
function sql_delete($tbname, $where){
return "DELETE FROM `".$tbname."` WHERE ".$where;
}
//新增加一条记录
function row_insert($tbname, $row){
$sql = $this->sql_insert($tbname, $row);
return $this->query_unbuffered($sql);
}
// 指定されたレコードを更新します
function row_update($tbname, $row, $where){
$sql // 指定されたレコードを更新します
$sql);
}
//条件を満たすレコードを削除
function row_delete( $tbname, $where){
$sql = $this->sql_delete($tbname, $where);
return $this-> ; query_unbuffered($sql) }
/* 条件に従ってクエリを実行し、すべてを返しますrecords
where="", $limit=0, $fields="*", $orderby="id", $sort="DESC"){
$sql = $this->sql_select($tbname, $where , $limit, $fields, $orderby, $sort);
return $this->row_query($sql); }
//レコードを詳細に表示します
function row_select_one($tbname, $where, $fields= "*" , $orderby="id"){
$sql
function row_query($sql){
$rs = $this->query($sql);
$rs_ num = $this->num_rows($ rs);
$rows = array();
for($i<$rs_num; $i++){
;
}
関数 row_query_one($sql){
$rs = $this- >query($sql);
$row = $this->fetch_array($rs);
$this- >free_result($rs ; .($where?" WHERE ".$where:"");

久しぶりに投稿しましたので私がよく使う php ファイルのいくつかを共有します。
新しい機能を追加したり、改善したりした場合は、みんなと共有してください。



コードをコピーします

コードは次のとおりです:

$db_config["hostname"] = "127.0.0.1"; //サーバーアドレス
$db_config["username"] = "root"; //データベースユーザー名
$db_config["pass" ] // データベースのパスワード
');
$db = new db();
$db->connect($db_config);
// テーブル table_name 内のすべてのレコードをクエリします。
$row = $db->row_select('table_name', 'cid=1');


詳しい使用方法については、db クラス ファイルのコメントを参照してください。


http://www.bkjia.com/PHPjc/318985.html

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/318985.html技術記事次のようにコードをコピーします。 ?php /* *mysql データベース DB クラス *@packagesb *@authoryytcpt(無影) *@version2008-03-27 *@copyrigthhttp://www.d5s.cn/ */ classdb{ var$ connection_id ="" var$p...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。