Correction status:qualified
Teacher's comments:如果你了解过mysqli, 可以发现pdo做了大量的简化
一、增删改查sql语句语法:
增: INSET INTO `表名` SET `字段名`=值 (也可写别名用,值前面加冒号->:别名);
删: DELETE FROM `表名` WHERE `字段名`=值 (也可写别名用,值前面加冒号->:别名);
改:UPDATE `表名` SET `字段名`=值 (也可写别名用,值前面加冒号->:别名);
查:SELECT * (或字段名) FROM `表名` WHERE `字段名`=值 (也可写别名用,值前面加冒号->:别名);
二、PDO连接数据库:
1-1 实例化PDO所需的参数
<?php return [ 'type'=>'mysql', 'host'=>'127.0.0.1', 'dbname'=>'php', 'username'=>'root', 'password'=>'root', ];
点击 "运行实例" 按钮查看在线实例
1-2 实例化PDO
<?php $db = require __DIR__.'\data.php'; $dsn = "{$db['type']}:host={$db['host']};dbname={$db['dbname']}"; $username = $db['username']; $password = $db['password']; try{ $pdo = new PDO($dsn,$username,$password); // echo'连接成功'; }catch(PDOException $e){ die('连接失败'.$e->getMessage()); }
点击 "运行实例" 按钮查看在线实例
2-1 添加数据代码
<?php require __DIR__.'\public-files\connect.php'; //创建sql语句 $sql = "INSERT INTO `cates` SET `name`=:name,`alias`=:alias"; //预处理对象 $mimt = $pdo->prepare($sql); //对变量别名赋值 $name = 'zb'; $alias = '直播'; $mimt->bindParam(':name',$name,pdo::PARAM_STR); $mimt->bindParam(':alias',$alias,pdo::PARAM_STR); //执行语句 if ($mimt->execute()) { if ($mimt->rowCount()) { echo "成功添加".$mimt->rowCount()."条数据信息"; } }else{ die(var_dump($mimt->errorinfo())); } //关闭PDO连接数据库 $pdo = null;
点击 "运行实例" 按钮查看在线实例
2-2 删除数据代码
<?php //引用pdo连接 require __DIR__.'\public-files\connect.php'; //创建sql语句 $sql = "DELETE FROM `cates` WHERE `cate_id`=:cate_id"; //预处理对象 $mimt = $pdo->prepare($sql); //对别名变量赋值 $cate_id = 11; $mimt->bindParam(':cate_id',$cate_id,PDO::PARAM_STR); //执行PDO if ($mimt->execute()) { if ($mimt->rowCount()>0) { echo "删除成功".$mimt->rowCount()."条数据"; } }else{ die('删除失败'); } //关闭PDO连接 $pdo = null;
点击 "运行实例" 按钮查看在线实例
2-3 更新数据代码
<?php //引用PDO连接 require __DIR__.'\public-files\connect.php'; //sql语句 $sql = "UPDATE `cates` SET `alias`=:alias WHERE `cate_id`=:cate_id"; //预处理对象 $mimt = $pdo->prepare($sql); //别名变量赋值 $alias = '时政'; $cate_id = 1; $mimt->bindparam(':alias',$alias,PDO::PARAM_STR); $mimt->bindparam(':cate_id',$cate_id,PDO::PARAM_STR); //执行PDO sql 语句 if ($mimt->execute()) { if ($mimt->rowCount()>0) { echo "成功更新".$mimt->rowCount()."条数据"; } }else{ echo "更新失败".var_dump($mimt->errorInfo()); }
点击 "运行实例" 按钮查看在线实例
2-4 查询数据代码
<?php //引用PDO连接 require __DIR__.'\public-files\connect.php'; //sql语句 $sql = "SELECT * FROM `cates`"; //预处理对象 $mimt = $pdo->prepare($sql); //别名变量赋值 $cate_id = 1; $mimt->bindparam(':cate_id',$cate_id,PDO::PARAM_STR); //执行PDO sql 语句 if ($mimt->execute()) { if ($mimt->rowCount()>0) { $cate = $mimt->fetchAll(PDO::FETCH_ASSOC);//查询全部数据 $cate1 = $mimt->fetch(PDO::FETCH_ASSOC);//查询单条数据 foreach ($cate as $value) { echo "<pre>".print_r($value,true); } var_dump($cate); } }else{ echo "查询失败".var_dump($mimt->errorInfo()); }
点击 "运行实例" 按钮查看在线实例