首页 > 后端开发 > PHP问题 > php面向对象连接数据库如何实现增删改

php面向对象连接数据库如何实现增删改

藏色散人
发布: 2023-03-05 09:34:01
原创
3749 人浏览过

php面向对象连接数据库实现增删改的方法:首先创建Mysql类并定义变量;然后通过构造函数初始化类;接着连接数据库,并自定义插入数据方法;最后使用update和delete方法修改或删除数据即可。

php面向对象连接数据库如何实现增删改

推荐:《PHP视频教程》 

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

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

<?php
    class
 Mysql{
        private
 $host;//服务器地址
        private
 $root;//用户名
        private
 $password;//密码
        private
 $database;//数据库名
         
        //后面所提到的各个方法都放在这个类里
        //...
    }
?>
登录后复制

2、通过构造函数初始化类

function
 __construct($host,$root,$password,$database){
    $this->host
 = $host;
    $this->root
 = $root;
    $this->password
 = $password;
    $this->database
 = $database;
    $this->connect();
}
登录后复制

对于connect()方法,下一步再说

3、创建连接数据库及关闭数据库方法

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()函数进行封装

function
 query($sql){
    return
 mysql_query($sql);
}
        
function
 myArray($result){
    return
 mysql_fetch_array($result);
}
        
function
 rows($result){
    return
 mysql_num_rows($result);
}
登录后复制

5、自定义查询数据方法

function
 select($tableName,$condition){
    return
 $this->query("SELECT
 * FROM $tableName $condition");
}
登录后复制

6、自定义插入数据方法

function
 insert($tableName,$fields,$value){
    $this->query("INSERT
 INTO $tableName $fields VALUES$value");
}
登录后复制

7、自定义修改数据方法

function
 update($tableName,$change,$condition){
    $this->query("UPDATE
 $tableName SET $change $condition");
}
登录后复制

8、自定义删除数据方法

function
 delete($tableName,$condition){
    $this->query("DELETE
 FROM $tableName $condition");
}
登录后复制

现在,数据库操作类已经封装好了,下面我们就来看看该怎么使用。

我们用的还是在PHP连接数据库,实现最基本的增删改查(面向过程)一文中所涉及到的数据库及表(表中数据自己添加):

9、那么我们先对数据库操作类进行实例化

$db
 = new Mysql("localhost","root","admin","beyondweb_test");
登录后复制

实例化可以在mysql_class.php文件中的Mysql类之外进行。

然后我们再创建一个test.php文件,首先把mysql_class.php文件引入

<?php
    require("mysql_class.php");
?>
登录后复制

然后我们就开始操作吧

10、向表中插入数据

<?php
    $insert
 = $db->insert("user","(nikename,email)","(#beyondweb#,#beyondwebcn@xx.com#)");//请把#号替换为单引号
    $db->dbClose();
?>
登录后复制

11、修改表中数据

<?php
    $update
 = $db->update("user","nikename
 = #beyondwebcn#","where
 id = #2#");//请把#号替换为单引号
    $db->dbClose();
?>
登录后复制

12、查询表中数据并输出

<?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、删除表中数据

<?php
    $delete
 = $db->delete("user","where
 nikename = #beyondweb#");//请把#号替换为单引号
    $db->dbClose();
?>
登录后复制

以上是php面向对象连接数据库如何实现增删改的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板