PDO的写操作

Original 2019-02-17 16:33:53 229
abstract:<?php //创建PDO对象,连接数据库 $pdo = new PDO('mysql:host=127.0.0.1;dbname=php_edu', 'root', 'root'); //-------------------添加-------------------------------
<?php
//创建PDO对象,连接数据库
$pdo = new PDO('mysql:host=127.0.0.1;dbname=php_edu', 'root', 'root');

//-------------------添加-----------------------------------------------------------------
//2. 创建SQL语句
$sql = "INSERT INTO `user` (`name`,`email`,`password`,`status`,`create_time`) VALUES (:name,:email,:password,:status,:create_time)";

//3. 验证SQL语句,创建预处理对象
$stmt = $pdo->prepare($sql);

//4. 参数绑定
$name = '幽悠的叶子';
$email = 'leaf@163.com';
$password = sha1('123456');
$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);

//5. 执行添加
if ($stmt->execute()) {
    echo ($stmt->rowCount()>0) ? '成功添加'.$stmt->rowCount().'条记录' : '没有记录被添加';
} else {
    exit(print_r($stmt->errorInfo(),true));
}


//-------------------------------更新------------------------------------------------------------
$sql = "UPDATE `user` SET `email`=:email,`create_time`=:create_time WHERE `user_id`=:user_id";
//3. 验证SQL语句,创建预处理对象
$stmt = $pdo->prepare($sql);

//4. 参数绑定
$id = 4;
$email = 'dfbb@qq.com';
$create_time = time();

$stmt->bindParam(':user_id', $id, PDO::PARAM_INT);
$stmt->bindParam(':email', $email, PDO::PARAM_STR, 100);
$stmt->bindParam(':create_time', $create_time, PDO::PARAM_INT);

//5. 执行更新
if ($stmt->execute()) {
    echo ($stmt->rowCount() > 0) ? '成功更新' . $stmt->rowCount() . '条记录' : '没有记录被更新';
} else {
    exit(print_r($stmt->errorInfo(), true));
}

//------------------------------------------删除-----------------------------------------------
//2. 创建SQL语句
$sql = "DELETE FROM `user`  WHERE `user_id`=:user_id";

//3. 验证SQL语句,创建预处理对象
$stmt = $pdo->prepare($sql);

//4. 参数绑定
$id = 4;

$stmt->bindParam(':user_id', $id, PDO::PARAM_INT);

//5. 执行添加
if ($stmt->execute()) {
    echo ($stmt->rowCount() > 0) ? '成功删除' . $stmt->rowCount() . '条记录' : '没有记录被删除';
} else {
    exit(print_r($stmt->errorInfo(), true));
}


Correcting teacher:西门大官人Correction time:2019-02-17 16:49:27
Teacher's summary:作业写的很好,PDO在处理数据库操作的时候使用参数绑定可以有效避免sql注入攻击

Release Notes

Popular Entries