PDO讲解

PDO的知识点标注在代码里

<?php
   //造DSN:驱动名:dbname=数据库名;host=服务器地址
   $dsn="mysql:dbname=mydb;host=localhost";
   $pdo=new PDO($dsn,"root","");
   
   //写sql语句
   $sql="select * from info";
   
   
   //1.execu()执行增删改语句
   
   //2.query()执行查询语句
   //例子
   /*//执行sql语句
   $v=$pdo->query($sql);
   
   foreach($v as $a)
   {                  //返回的对象比较特殊,可以直接用循环遍历,尽量不要用
	   echo $a[0];        
   }*/
   
   
   //3.预处理语句——prepare()和execute语句
   //预处理,先把sql语句放到服务器上等待我们给他指令去执行
   $stm=$pdo->prepare($sql);
   
   //execute()执行准备好的sql语句,成功返回true,失败返回false
   if($stm->execute())
   {
	   //获取结果的方法      
	                            //注意:各个获取结果的方法括号内可以写参数
	   //1.取一条数据
	   //var_dump($stm->fetch());
	   
	                            //fetch()和fetchALL()的参数相同
	   
	   //2.取所有
	   //var_dump($stm->fetchAll(PDO::FETCH_ASSOC));//返回关联数组
	   //var_dump($stm->fetchAll(PDO::FETCH_NOM));//返回索引数组
	   //var_dump($stm->fetchAll(PDO::FETCH_OBJ));//返回对象数组
	   
	                             
	   //3.取某一列
	   //var_dump($stm->fetchColumn(1)); //以0开始索引
	   
	   //4.返回一条对象
	   //var_dump($stm->fetchObject());
   }
   else
   {
	   echo "连接失败";
   }

  

以下代码为PDO参数绑定

<?php
   //造对象
   $dsn="mysql:dbname=mydb;host=localhost";
   $pdo=new PDO($dsn,"root","");
   
   //写sql语句
   
   //$sql="insert into nation values (?,?)";   //语句1
   
   $sql="insert into nation values (:aa,:bb)";  //语句2
   
   //预处理
   $stm=$pdo->prepare($sql);
   
   //给参数绑定值
   
   //1.1:$sql语句里用?时,使用bindParam()添加  
   $stm->bindParam(1,$code);  //数字1代表占位符,$code代表添加的列名 
   $stm->bindParam(2,$name);
   $code="n009";     //修改此两处的值实现反复添加
   $name="犹太族";
   
   //1.2:$sql语句里用?时,使用索引数组添加
   $attr=array("n010","藏族");   //这种方法要把第一个参数写成索引形势,并且要把$attr放到execute($attr)内
   
   //2.1:$sql语句里用:aa时,使用bindParam()添加
   $stm->bindParam("aa",$code,PDO::PARAM_STR);
   $stm->bindParam("bb",$name,PDO::PARAM_STR);
   $code="n011";
   $name="巨人族";
   
   //2.2:$sql语句里用?时,使用关联数组
   $attr=array("aa"=>"n012","bb"=>"小人族");
   
   //执行
   if($stm->execute($attr))
   {
	   echo "执行成功";
   }
   else
   {
	   echo "执行失败";
   }

  

练习:PDO添加表单

前端页面

<body>
<h1>添加民族代号和名称</h1>
<br />
<form action="PDOtjchuli.php" method="post">
民族代号:<input type="text" name="one"/><br />
民族名称:<input type="text" name="two"/><br />
<input type="submit" value="提交"/>
</form>
</body>
</html>

  

后台处理代码

<?php
$dsn="mysql:dbname=mydb;host=localhost";
$pdo=new PDO($dsn,"root","");
$sql="insert into nation values (:aa,:bb)";
$result=$pdo->prepare($sql);

$attr=array("aa"=>$_POST["one"],"bb"=>$_POST["two"]);

if($result->execute($attr))
{
	echo "<script>alert('添加成功')</script>";
}
else
{
	echo "<script>alert('添加成功')</script>";
}

  

原文地址:https://www.cnblogs.com/zst062102/p/5496333.html