Blogger Information
Blog 25
fans 2
comment 0
visits 18588
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
PHP教学-PDO操作,增删改查_11.21
果莫个人博客
Original
1318 people have browsed it

PDO操作

pdo连接

//这两个方法不再用:
//    php mysql  5.4以下版本
//    php mysqli 5.4以上版本
//
//主流方法:
//    PDO是php data object 的简写 php数据对象
//PDO支持不同类型的数据库。PDO是最方便访问数据库的接口
//
//PDO连接

//$pdo= new PDO(‘mysql:host=localhost;dbname=shujuku’,’root123’,’root123’);
//print_r($pdo);

//数据库连接参数
$db=[
   ‘type’=>’mysql’,
   ‘host’=>’localhost’,
   ‘dbname’=>’shujuku’,
   ‘username’=>’root123’,
   ‘password’=>’root123’
];

$dsn=”{$db[‘type’]}:host={$db[‘host’]};dbname={$db[‘dbname’]}”;

//echo $dsn;
//echo ‘<hr>‘;
//$pdo = new PDO($dsn,$db[‘username’],$db[‘password’]);
//
//print_r($pdo);
//echo’<hr>‘;
//连接数据库
try{
   $pdo = new PDO($dsn,$db[‘username’],$db[‘password’]);
}
catch (PDOException $e) {
   die(‘错误信息:’. $e->getMessage());

}

//print_r($pdo);

//PDO、是PHP系统中的类,我们在自己的php文件里是看不到代码的,只能通过打印查看

<?php
require ‘connect.php’;

//========================================================================
//创建SQL语句模板,相当于占位,用来接收值
$sql = ‘INSERT INTO category SET name=:name , alias=:alias’;

//预处理
$stmt = $pdo ->prepare($sql);
//echo’<hr>‘;
//print_r($stmt) ;

//echo’<hr>‘;
$name=’els’;
$alias=’俄罗斯’;
$stmt->bindParam(‘name’,$name,PDO::PARAM_STR);
$stmt->bindParam(‘alias’,$alias,PDO::PARAM_STR);
//========================================================================

//PDOStatement类对增删查改进行操作
$caozuo = $stmt ->execute();

if ($caozuo){
   $count = $stmt -> rowCount();
   if ($count>0){
       echo’插入成功’;}
       else{
           echo’插入失败’;
       }
   }
else{
   die(print_r($stmt->errorInfo(),true));
}

//类连接,是一直连接的,在执行完代码之后,自动释放,但是代码特别长的情况下,用代码释放。
//unset($add);
//unset($pdo);
$pdo=null;
print_r($pdo);

<?php

require ‘connect.php’;

//========================================================================
$sql = ‘DELETE FROM category WHERE cate_id=:cate_id’;
$stmt = $pdo ->prepare($sql);

$cate_id=11;

$stmt->bindParam(‘cate_id’,$cate_id,PDO::PARAM_STR);

//========================================================================

//PDOStatement类对增删查改进行操作
$caozuo = $stmt ->execute();

if ($caozuo){
   $count = $stmt -> rowCount();
   if ($count>0){
       echo’删除成功’;}
       else{
           echo’删除失败’;
       }
   }
else{
   die(print_r($stmt->errorInfo(),true));
}

//类连接,是一直连接的,在执行完代码之后,自动释放,但是代码特别长的情况下,用代码释放。
//unset($add);
//unset($pdo);
$pdo=null;
print_r($pdo);

<?php
require ‘connect.php’;

//========================================================================
//创建SQL语句模板,相当于占位,用来接收值
$sql= ‘UPDATE category SET name=:name,alias=:alias WHERE cate_id=:id’;

//预处理
$stmt = $pdo ->prepare($sql);
//echo’<hr>‘;
//print_r($stmt) ;

//echo’<hr>‘;

$id=9;
$name=’mlxy’;
$alias=’马来西亚’;
$stmt->bindParam(‘id’,$id,PDO::PARAM_STR);
$stmt->bindParam(‘name’,$name,PDO::PARAM_STR);
$stmt->bindParam(‘alias’,$alias,PDO::PARAM_STR);
//========================================================================

//PDOStatement类对增删查改进行操作
$caozuo = $stmt ->execute();

if ($caozuo){
   $count = $stmt -> rowCount();
   if ($count>0){
       echo’修改成功’;}
       else{
           echo’修改失败’;
       }
   }
else{
   die(print_r($stmt->errorInfo(),true));
}

//类连接,是一直连接的,在执行完代码之后,自动释放,但是代码特别长的情况下,用代码释放。
//unset($add);
//unset($pdo);
$pdo=null;
print_r($pdo);

<?php

require ‘connect.php’;

//========================================================================
$sql = ‘SELECT FROM category ‘;
//$sql = ‘SELECT
FROM category WHERE cate_id >= :cate_ids1 and cate_id <= :cate_ids2’;
$stmt = $pdo ->prepare($sql);

//$cate_ids1=3;
//$cate_ids2=12;

//
//$stmt->bindParam(‘cate_ids1’,$cate_ids1,PDO::PARAM_STR);
//$stmt->bindParam(‘cate_ids2’,$cate_ids2,PDO::PARAM_STR);
//========================================================================

//PDOStatement类对增删查改进行操作
$caozuo = $stmt ->execute();

if ($caozuo){
 $arr=$stmt->fetch();
   echo    $arr[‘cate_id’];
   echo    $arr[‘name’];
   echo    $arr[‘alias’];

}

else{
   die(print_r($stmt->errorInfo(),true));
}

//类连接,是一直连接的,在执行完代码之后,自动释放,但是代码特别长的情况下,用代码释放。
//unset($add);
//unset($pdo);
//$pdo=null;
//print_r($pdo);

Correcting teacher:查无此人查无此人

Correction status:qualified

Teacher's comments:完成的不错,继续努力。mysqli现在的php版本,还是可以用,但没有pdo好。
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post