码迷,mamicode.com
首页 > Web开发 > 详细

PHP之PDO的使用

时间:2018-07-31 11:47:41      阅读:184      评论:0      收藏:0      [点我收藏+]

标签:DBName   查询   ext   images   cep   数据库   value   roo   技术分享   

pdo方式连接数据库

try{
        $db = new PDO(‘mysql:host=127.0.0.1;dbname=test;port=3306;charset=utf8‘,‘root‘,‘123456‘);
}catch(PDOException $e){
        echo ‘mysql error: ‘.$e->getMessage();
}

1.excu()方式增删改,不推荐

$sql = "insert into test (username,password) values (‘liming‘,123456)";
$res = $db->excu($sql);
echo $res //返回受影响的行数 1

2.PDOStatement类,增删改(推荐用这种方式,速度快,可以防止sql注入)
方式1-推荐

$sql = "insert into test (username,password) values (:name,:password)";
$data = [‘:name‘=>‘liming‘,‘:password‘=>123456];
$stmt = $db->prepare($sql);
$res  = $stmt->execute($data);
echo $res //返回受影响的行数 1

方式2,增删改一样

$name=‘maoxiaoming‘;//要插入的数据一定要先用变量定义,不然会报错
$password= md5(123456);
$sql = $sql = "insert into test (username,password) values (:name,:password)";
$stmt = $db->prepare($sql);
$stmt->bindParam(‘:name‘,$name);
$stmt->bindParam(‘:password‘,$password);
$res = $stmt->execute();
echo $res //返回受影响的行数 1

3.PDOStatement类查询所有数据

$sql  = "select * from user";
$stmt = $db->prepare($sql);
$stmt->execute();
$res = $stmt->fetchAll(PDO::FATCH_ASSOC);

技术分享图片

//查询一条

$sql = "select * from user where id=:id";
$data = [‘:id‘=>3];
$stmt = $db->prepare($sql);
$stmt->execute($data);
echo ‘<pre>‘;
print_r($stmt->fetch(PDO::FETCH_ASSOC));

PHP之PDO的使用

标签:DBName   查询   ext   images   cep   数据库   value   roo   技术分享   

原文地址:http://blog.51cto.com/woaijorden/2152508

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!