程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> 自己寫的mysql類

自己寫的mysql類

編輯:關於PHP編程

---------- php debug ----------
Server=localhost;DataBase=mysql;UserID=root;PassWord=123456
resource(5) of type (mysql result)

Output completed (1 sec consumed) - Normal Termination

<?php
class DBCLS
{

 //debug 調試開關
 var $debug = true;

 //debuginfo 錯誤信息,調試信息
 var $debuginfo = "debug informations: ";

 //db_server MySQL主機地址
 var $db_server;

 //db_name 數據庫名
 var $db_name;

 //db_user 數據庫用戶名
 var $db_user;

 //db_passwd 密碼
 var $db_passwd;

 //db_links  數據庫連接
 var $db_link;

 //db_query_sql SQL語句
 var $db_query_sql = "show tables";

 //db_recordset 結果集,記錄集
 var $db_recordset;

 //ready        就緒開關
 var $conntstr_ready = false;
 var $link_ready = false;
 var $db_ready = false;

 //set or return Connection String  返回,或者設定連接字符串
 function connection_string($connstr="")
 {
  if("" == $connstr)
  {
   //如果沒有參數傳入,返回已有的連接字符
   return "Server=".$this->db_server.";DataBase=".$this->db_name.";UserID=".$this->db_user.";PassWord=".$this->db_passwd;
  }
  else
  {
   //否則,解析連接字符,初始化變量
   preg_match_all("|([a-zA-Z0-9]*)=([a-zA-Z0-9]*);*|", $connstr,   $tmparr, PREG_PATTERN_ORDER);
   $this->db_server = (strtolower($tmparr[1][0]) == "server")?$tmparr[2][0]:"";
   $this->db_name   = (strtolower($tmparr[1][1]) == "database")?$tmparr[2][1]:"";
   $this->db_user   = (strtolower($tmparr[1][2]) == "userid")?$tmparr[2][2]:"";
   $this->db_passwd = (strtolower($tmparr[1][3]) == "password")?$tmparr[2][3]:"";
   //var_dump($tmparr);

   if("" == $this->db_server or "" == $this->db_name or "" == $this->db_user or "" == $this->db_passwd)
    $this->conntstr_ready = false; //如果有其中一個以上變量被賦以空字符串"",准備未就緒
   else
    $this->conntstr_ready = true;
   return $this->conntstr_ready;
  }

 }


 //連接數據庫,返回連接對象
 function connect()
 {
  if(!$this->conntstr_ready)
  {
   if($this->debug){$this->debuginfo .= "連接字符串無效! ";}
   return $this->link_ready;
  }
  if($this->db_link = @mysql_connect($this->db_server, $this->db_user, $this->db_passwd))
  {
   $this->link_ready = true;
   return $this->link_ready;
  }
 }


 //選擇數據庫
 function select($db = "")
 {
  if(!$this->db_link)
  {
   if($this->debug){$this->debuginfo .= "沒有可用的數據庫連接! ";}
   $this->db_ready = false;
  }
  if("" == $db)
  {
   if(mysql_select_db($this->db_name))
    $this->db_ready = true;
  }
  if(mysql_select_db($this->db_name = $db))
   $this->db_ready = true;
  return $this->db_ready;
 }


 //執行查詢
 function execute($SQL = "")
 {
  if("" != $SQL)
  {
   $this->db_query_sql = $SQL;
   //if($this->debug){$this->debuginfo .= "SQL is null! ";}
   //return false;
  }
  if("" == $this->db_query_sql)
  {
   if($this->debug){$this->debuginfo .= "SQL is null! ";}
   return false;
  }
  $this->db_recordset = mysql_query($this->db_query_sql);
  return true;
 }
}


$dbmy = new DBCLS(); //創建一個DBCLS對象
if(!$dbmy->connection_string("Server=localhost;DataBase=mysql;UserID=root;PassWord=123456"))//初始化DBCLS對象dbmy

print $dbmy->debuginfo; //初始化失敗,輸出錯誤信息

else

print $dbmy->connection_string(); //初始化成功,輸出連接字符串
print " ";

if(!($dbmy->connect()) or !($dbmy->select())) //如果連接數據庫,或者選擇數據庫失敗
print $dbmy->debuginfo;                               //輸出出錯信息
//$dbmy->db_query_sql = "select * from user";
if($dbmy->execute())              //執行查詢指令
{                                 //如果不出錯
 var_dump($dbmy->db_recordset);//輸出返回的結果集
}
?>

輸出信息:

---------- php debug ----------
Server=localhost;DataBase=mysql;UserID=root;PassWord=123456
resource(5) of type (mysql result)

Output completed (1 sec consumed) - Normal Termination


  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved