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();
?>
|