PHP(面向对象)连接数据库,实现基本的增删改查

1、创建mysql_class.php文件然后在该文件中创建Mysql类,并定义变量

1
2
3
4
5
6
7
8
9
10
11
     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
     require( "mysql_class.php" );
?>

然后我们就开始操作吧

10、向表中插入数据

1
2
3
4
     $insert = $db->insert( "user" , "(nikename,email)" , "(#beyondweb#,#[email protected]#)" );//请把#号替换为单引号
     $db->dbClose();
?>

11、修改表中数据

1
2
3
4
     $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
     $select = $db->select( "user" );
     $row = $db->rows($select);
     if($row>= 1 ){
?>
"1px">
    
        
        
        
    
     while($array = $db->myArray($select)){
         echo "
" ;
         echo "
" ;//请把#号替换为单引号
         echo "
" ;//请把#号替换为单引号
         echo "
" ;//请把#号替换为单引号
         echo "
" ;
     }
?>
id nikename email
" .$array[#id#]. "" .$array[#nikename#]. "" .$array[#email#]. "
     }else{
         echo "查不到任何数据!" ;
     }
      
     $db->dbClose();
?>

13、删除表中数据

1
2
3
4
     $delete = $db->delete( "user" , "where nikename = #beyondweb#" );//请把#号替换为单引号
     $db->dbClose();
?>

你可能感兴趣的:(PHP(面向对象)连接数据库,实现基本的增删改查)