批改状态:合格
老师批语:
<?phpnamespace pdo_edu;use PDO;// 1.连接数据库//DNS:数据库配置参数,类型、主机名、数据库名、端口号、默认字符集$username = 'root';$password = 'root';$dsn = 'mysql:host=127.0.0.1;dbname=statt;port=3306;charset=utf8';$db = new PDO($dsn,$username,$password);//设置查询数据只获取关联数组$db->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE,PDO::FETCH_ASSOC);// var_dump($db);// 2.增删改查:CURD/*** PDO预处理:1.防止sql注入。2.数据延迟绑定* (编程时只写sql模板,执行sql语句在给占位符绑定真实数据)* 预处理过程:* 1.创建语句模板对象:数据用占位符表示* 2.执行sql语句,根据操作类型(写/读),读返回结果集/数组,写返回受影响的记录数量* '?'匿名占位符; 'string'命名占位符*///INSERT插入//INSERT 表名 set 字段=值// 1.关键字全大写// 2.表名字段名使用反引号作为定界符$sql = 'INSERT `user` SET `name` = ?, `sex` = ?, `email` = ?';// print($sql);//1.创建sql语句模板对象$statt = $db->prepare($sql);//2.执行sql语句//成功$statt->execute(['洪七公',0,'gongqigong@php.cn']);$statt->execute(['小龙女',1,'xiaolongnv@php.cn']);$statt->execute(['李莫愁',1,'limochou@php.cn']);if($statt->rowCount()>0){echo '新增成功,ID=' . $db->lastInsertId();}else{echo '新增失败';print_r($statt->errorInfo());}if($statt->execute(['杨过',0,'yangguo@php.cn'])){}else{//失败echo '执行失败';print_r($statt->errorInfo());}//UPDATE更新操作$sql = 'UPDATE `user` SET `name` = ? WHERE `id` = ?';$statt = $db->prepare($sql);$statt->execute(['小龙女22',3]);if($statt->rowCount()>0){echo '更新成功';}else{echo '更新失败';print_r($statt->errorInfo());}//DELETE删除操作$sql = 'DELETE FROM `user` WHERE `id` = ?';$statt = $db->prepare($sql);$statt->execute([3]);if($statt->rowCount()>0){echo '删除成功';}else{echo '删除失败';print_r($statt->errorInfo());}//SELECT 查询操作$sql = 'SELECT * FROM `user`';$statt = $db->prepare($sql);$statt->execute();//单条查询fetch// $staff = $statt->fetch();// printf('<pre>%s</pre>',print_r($staff,true));//多条查询fetchAll$staff = $statt->fetchAll();printf('<pre>%s</pre>',print_r($staff,true));
PDO预处理:1.防止sql注入。2.数据延迟绑定(编程时只写sql模板,执行sql语句在给占位符绑定真实数据)预处理过程:1.创建语句模板对象:数据用占位符表示2.执行sql语句,根据操作类型(写/读),读返回结果集/数组,写返回受影响的记录数量'?'匿名占位符; 'string'命名占位符
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号