4月25日作业
1、oop 前处理修改:
(1).连接数据库:db_connect.php
实例
<?php /** * 连接数据库 */ //1.连接参数 $db_host = 'localhost'; $db_user = 'root'; $db_pass = 'root'; $db_name = 'php'; $db_charset = 'utf8'; //2.连接数据库服务器,并返回mysqli对象 $mysqli = @new mysqli($db_host,$db_user,$db_pass); //3.检测是否连接成功 if ($mysqli->connect_errno) { exit('连接错误'.$mysqli->connect_errno.':'.$mysqli->connect_error); } //echo '<h1>连接成功</h1>'; //4.设置默认数据库 $mysqli->select_db($db_name); //5.设置客户端默认字符编码集 $mysqli->set_charset($db_charset);
运行实例 »
点击 "运行实例" 按钮查看在线实例
(2)、修改数据: db_pre_update.php
实例
<meta charset="utf-8"> <?php //1.连接数据库 require 'oop_connect.php'; //2.准备SQL语句 $sql = "UPDATE staff SET name = ?,salary = ? WHERE id = ?"; //3.创建STMT预处理对象 $stmt = $mysqli->stmt_init(); //4.检测预处理SQL语句 if ($stmt->prepare($sql)) { //用二维数组来保存要添加的记录 $data[] = ['name'=> '鲁智深','salary'=>9000, 'id'=>23]; $data[] = ['name'=> '扈三娘','salary'=>8000, 'id'=>25]; //绑定参数到预处理SQL语句 $stmt->bind_param('sii',$name,$salary, $id); foreach ($data as $staff) { //准备要插入的数据 $name = $staff['name']; $salary = $staff['salary']; $id = $staff['id']; //执行预处理语句 $stmt->execute(); //检测运行结果 if ($stmt->affected_rows > 0 ){ echo '<br>成功更新'.$stmt->affected_rows.'条记录。'; } else { echo '<br>没有更新记录'; } } //5.注销stmt对象 $stmt->close(); } else { //返回错误信息 exit($stmt->errno.':'.$stmt->error); } //6. 关闭数据库连接 $mysqli->close();
运行实例 »
点击 "运行实例" 按钮查看在线实例
(3). pdo 删除记录: pdo_pre_delete.php
实例
<meta charset="utf-8"> <?php //预处理删除数据 //1、连接数据库,创建 pdo 对象 $pdo = new PDO('mysql:dbname=php', 'root', 'root'); //2、准备 sql 语句 $sql = "DELETE FROM staff WHERE id = :id"; //3、创建预处理对象 stmt 对象 if($stmt = $pdo->prepare($sql)){ //4、将参数绑定到 stmt 对象并执行 //准备参数 $param = ['id'=>4]; //绑定参数到 sql 语句对象并执行 if($stmt -> execute($param)){ //rowCount() 返回删除的数量,如果大于 0 表示有记录被删除 if($stmt -> rowCount()>0){ echo '成功删除了'.$stmt->rowCount().'条记录'; }else{ //等于 0 表示没有记录被删除 echo '没有记录被删除'; } }else{ //执行失败显示的信息 print_r($stmt->errorInfo()); exit(); } }else{ //语句 $stmt 对象创建失败 print_r($pdo->errorInfo()); exit(); }
运行实例 »
点击 "运行实例" 按钮查看在线实例
运行后的数据库图片:
姓名 武松--》鲁智深
杨康--》扈三娘
删除了 id=4 这条数据