PHP連接數據庫,實現最基本的增刪改查(面向對象)


1、創建mysql_class.php文件然后在該文件中創建Mysql類,並定義變量

1
2
3
4
5
6
7
8
9
10
11
<?php
     class Mysql{
         private $host;//服務器地址
         private $root;//用戶名
         private $password;//密碼
         private $database;//數據庫名
         
         //后面所提到的各個方法都放在這個類里
         //...
     }
?>

2、通過構造函數初始化類

1
2
3
4
5
6
7
function __construct($host,$root,$password,$database){
     $this->host = $host;
     $this->root = $root;
     $this->password = $password;
     $this->database = $database;
     $this->connect();
}

對於connect()方法,下一步再說

3、創建連接數據庫及關閉數據庫方法

1
2
3
4
5
6
7
8
9
function connect(){
     $this->conn = mysql_connect($this->host,$this->root,$this->password) or die( "DB Connnection Error !" .mysql_error());
     mysql_select_db($this->database,$this->conn);
     mysql_query( "set names utf8" );
}
         
function dbClose(){
     mysql_close($this->conn);
}

4、對mysql_query()、mysql_fetch_array()、mysql_num_rows()函數進行封裝

1
2
3
4
5
6
7
8
9
10
11
function query($sql){
     return mysql_query($sql);
}
        
function myArray($result){
     return mysql_fetch_array($result);
}
        
function rows($result){
     return mysql_num_rows($result);
}

5、自定義查詢數據方法

1
2
3
function select($tableName,$condition){
     return $this->query( "SELECT * FROM $tableName $condition" );
}

6、自定義插入數據方法

1
2
3
function insert($tableName,$fields,$value){
     $this->query( "INSERT INTO $tableName $fields VALUES$value" );
}

7、自定義修改數據方法

1
2
3
function update($tableName,$change,$condition){
     $this->query( "UPDATE $tableName SET $change $condition" );
}

8、自定義刪除數據方法

1
2
3
function delete($tableName,$condition){
     $this->query( "DELETE FROM $tableName $condition" );
}

現在,數據庫操作類已經封裝好了,下面我們就來看看該怎么使用。

我們用的還是在PHP連接數據庫,實現最基本的增刪改查(面向過程)一文中所涉及到的數據庫及表(表中數據自己添加):

9、那么我們先對數據庫操作類進行實例化

1
$db = new Mysql( "localhost" , "root" , "admin" , "beyondweb_test" );

實例化可以在mysql_class.php文件中的Mysql類之外進行。

然后我們再創建一個test.php文件,首先把mysql_class.php文件引入

1
2
3
<?php
     require( "mysql_class.php" );
?>

然后我們就開始操作吧

10、向表中插入數據

1
2
3
4
<?php
     $insert = $db->insert( "user" , "(nikename,email)" , "(#beyondweb#,#beyondwebcn@xx.com#)" );//請把#號替換為單引號
     $db->dbClose();
?>

11、修改表中數據

1
2
3
4
<?php
     $update = $db->update( "user" , "nikename = #beyondwebcn#" , "where id = #2#" );//請把#號替換為單引號
     $db->dbClose();
?>

12、查詢表中數據並輸出

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<?php
     $select = $db->select( "user" );
     $row = $db->rows($select);
     if($row>= 1 ){
?>
<table border= "1px" >
     <tr>
         <th>id</th>
         <th>nikename</th>
         <th>email</th>
     </tr>
<?php
     while($array = $db->myArray($select)){
         echo "<tr>" ;
         echo "<td>" .$array[#id#]. "</td>" ;//請把#號替換為單引號
         echo "<td>" .$array[#nikename#]. "</td>" ;//請把#號替換為單引號
         echo "<td>" .$array[#email#]. "</td>" ;//請把#號替換為單引號
         echo "</tr>" ;
     }
?>
</table>
<?php
     }else{
         echo "查不到任何數據!" ;
     }
      
     $db->dbClose();
?>

13、刪除表中數據

1
2
3
4
<?php
     $delete = $db->delete( "user" , "where nikename = #beyondweb#" );//請把#號替換為單引號
     $db->dbClose();
?>


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM