摘要:新增操作<?php /** * PDO 添加操作 * rowCound()方法:返回受影响的记录数量 * errorInfo()方法:返回出错信息(数组格式) */ //链接数据库 $pdo = new PDO('mysql:host=localhost;dbnam
新增操作
<?php
/**
* PDO 添加操作
* rowCound()方法:返回受影响的记录数量
* errorInfo()方法:返回出错信息(数组格式)
*/
//链接数据库
$pdo = new PDO('mysql:host=localhost;dbname=php_edu','root','root');
//创建sql语句
$sql = "INSERT INTO `user` (`name`,`email`,`password`,`status`,`create_time`) VALUES(:name,:email,:password,:status,:create_time)";
//验证SQL语句 并创建成预处理对象
$stmt = $pdo->prepare($sql);
//var_dump($stmt);
//执行添加操作
// 参数绑定
$name = '张无忌';
$email = 'zwj@qq.com';
$password = sha1('123445');
$status = 1;
$create_time = time(); //获取当前时间戳
$stmt->bindParam(':name',$name,PDO::PARAM_STR,20);
$stmt->bindParam(':email',$email,PDO::PARAM_STR,100);
$stmt->bindParam(':password',$password,PDO::PARAM_STR,40);
$stmt->bindParam(':status',$status,PDO::PARAM_INT);
$stmt->bindParam(':create_time',$create_time,PDO::PARAM_INT);
//执行SQL语句 成功返回true,失败返回false
if($stmt->execute()){
echo ($stmt->rowCount()>0) ? '成功添加了'.$stmt->rowCount().'条记录' : '没有记录被添加';
}else{
exit(print_r($stmt->errorInfo(),true));
}更新操作
<?php
/**
* PDO 添加操作
* rowCound()方法:返回受影响的记录数量
* errorInfo()方法:返回出错信息(数组格式)
*/
//链接数据库
$pdo = new PDO('mysql:host=localhost;dbname=php_edu','root','root');
//创建sql语句
$sql = "UPDATE `user` SET `email` = :email,`create_time` = :ctime WHERE `user_id` = :user_id";
//验证sql语句 创建预处理对象
$stmt = $pdo->prepare($sql);
//参数绑定
$id = 5;
$email = 'zm@qq.com';
$ctime = time();
$stmt->bindParam(':user_id',$id,PDO::PARAM_INT);
$stmt->bindParam(':email',$email,PDO::PARAM_STR,100);
$stmt->bindParam(':ctime',$ctime,PDO::PARAM_INT);
//执行
if($stmt->execute()){
echo ($stmt->rowCount()>0) ? '成功更新了'.$stmt->rowCount().'条记录' : ',没有数据被更新' ;
}else{
exit(print_r($stmt->errorInfo(),true));
}删除操作
<?php
/**
*PDO删除操作
* 删除必须基于条件,绝对禁止无条件删除
* 如果想清空表中数据,使用TRUNCATE TABLE命令
*/
//链接数据库
$pdo = new PDO('mysql:host=localhost;dbname=php_edu','root','root');
//创建sql语句
$sql = "DELETE FROM `user` WHERE `user_id` = :user_id";
//创建预处理对象
$stmt = $pdo->prepare($sql);
//参数绑定
$id = 2;
$stmt->bindParam(':user_id',$id,PDO::PARAM_INT);
//执行删除操作
if($stmt->execute()){
echo ($stmt->rowCount()>0) ? '成功删掉了'.$stmt->rowCount().'条记录' : '没有记录被删除' ;
}else{
exit(print_r($stmt->errorInfo(),true));
}
批改老师:天蓬老师批改时间:2019-01-13 19:13:43
老师总结:代码写得非常的规范, 也很清楚, 特别是对错误的处理,以及条件判断,写得非常的棒if($stmt->execute()) , 这里改成: if(true ==$stmt->execute()), 效率会更高