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

MySQL數據庫類的定義

編輯:關於MYSQL數據庫

      俗話說“好的開始是成功的一半”,而PHP+MySQL項目中數據庫的操作是重點之一,能否簡化數據庫操作程序的編寫,就成了影響工作效率的關鍵之一。

      所以小陽並不是一開始就做頁面,而是先建立一個“dbclass.php”文件,開始編寫操作MySQL數據庫的類“dbClass”。即在“dbclass.php”中編寫以下程序:

      $db_username="myusername"; //連接數據庫的用戶名

      $db_password="mypassword"; //連接數據庫的密碼

      $db_database="mydatabase"; //數據庫名

      $db_hostname="localhost"; //服務器地址

      class dbClass{ //開始數據庫類

      var $username;

      var $password;

      var $database;

      var $hostname;

      var $link;

      var $result;

      function dbClass($username,$password,$database,$hostname="localhost"){

      $this->username=$username;

      $this->password=$password;

      $this->database=$database;

      $this->hostname=$hostname;

      }

      function connect(){ //這個函數用於連接數據庫

      $this->link=mysql_connect($this->hostname,$this->username,$this->password) or die("Sorry,can not connect to database");

      return $this->link;

      }

      function select(){ //這個函數用於選擇數據庫

      mysql_select_db($this->database,$this->link);

      }

      function query($sql){ //這個函數用於送出查詢語句並返回結果,常用。

      if($this->result=mysql_query($sql,$this->link)) return $this->result;

      else {

      //這裡是顯示SQL語句的錯誤信息,主要是設計階段用於提示。正式運行階段可將下面這句注釋掉。

      echo "SQL語句錯誤: $sql

      錯誤信息: ".mysql_error();

      return false;

      }

      }

      /*

      以下函數用於從結果取回數組,一般與 while()循環、$db->query($sql) 配合使用,例如:

      $result=query("select * from mytable");

      while($row=$db->getarray($result)){

      echo "$row[id] ";

      }

      */

      function getarray($result){

      return @mysql_fetch_array($result);

      }

      /*

      以下函數用於取得SQL查詢的第一行,一般用於查詢符合條件的行是否存在,例如:

      用戶從表單提交的用戶名$username、密碼$password是否在用戶表“user”中,並返回其相應的數組:

      if($user=$db->getfirst("select * from user where username=''$username'' and password=''$password'' "))

      echo "歡迎 $username ,您的ID是 $user[id] 。";

      else

      echo "用戶名或密碼錯誤!";

      */

      function getfirst($sql){

      return @mysql_fetch_array($this->query($sql));

      }

      /*

      以下函數返回符合查詢條件的總行數,例如用於分頁的計算等要用到,例如:

      $totlerows=$db->getcount("select * from mytable");

      echo "共有 $totlerows 條信息。";

      */

      function getcount($sql){

      return @mysql_num_rows($this->query($sql));

      }

      /*

      以下函數用於更新數據庫,例如用戶更改密碼:

      $db->update("update user set password=''$new_password'' where userid=''$userid'' ");

      */

      function update($sql){

      return $this->query($sql);

      }

      /*

      以下函數用於向數據庫插入一行,例如添加一個用戶:

      $db->insert("insert into user (userid,username,password) values (null,''$username'',''$password'')");

      */

      function insert($sql){

      return $this->query($sql);

      }

      function getid(){ //這個函數用於取得剛插入行的id

      return mysql_insert_id();

      }

      }

      /*

      主要函數就是這些,如果你自己有另外的需要,也可以自己添加上去。

      因為凡使用該類的都必須連接數據庫,下面就連接並選擇好數據庫吧:

      */

      $db=new dbClass("$db_username","$db_password","$db_database","$db_hostname");

      $db->connect();

      $db->select();

      ?>

      OK,數據庫的類已經寫好了,它不但可以用在目前這個項目中,其他項目的同樣適用!只要把“dbclass.php”復制過去就行了。要用本文件的時候只要用語句“include_once("dbclass.php")”就行,具體語法在編寫數據庫類時已有舉例,不再贅述。

      寫好數據庫的類後,數據庫的操作就方便多了,項目的制作已跨出了重要的第一步。

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