温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

php 中怎么使用pdo连接数据库

发布时间:2021-06-30 16:25:29 来源:亿速云 阅读:160 作者:Leah 栏目:数据库

本篇文章为大家展示了php 中怎么使用pdo连接数据库,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

要用php连接数据库首先要要实例化pdo的类,并且要有数据源,服务器账号,服务器密码。

  数据源是数据库类型,服务器名称,数据库名称的一个集合。

  query("set names gbk");//设置从数据库里面传递过来的数据的编码格式

  ?>

  事务介绍:事务介绍我就通过我自己的理解来讲解一遍吧,就是先要关闭数据库的自动提交功能(什么是自动提交功能?就是当我们写完一个sql语句后,按回车键执行不起,而要经过特殊的代码处理才能提交上去,后面我会介绍的)

  然后写出你要执行的sql语句并将返回的结果赋给两个不同的变量,之后提交,如果在执行的时候其中1个或多个发生了错误,就进行事务回滚,即使回归初始状态(也就是前面在事务处理代码中的插入或改变或删除或查询的语句全部作废),还有一个优点是不会因为进入其他网页,或执行其他sql语句而影响到事务处理的进程

  //以下是事务回滚的代码简介

  query("set names gbk");//设置从数据库里面传递过来的数据的编码格式

  $pdo->begintransaction();//在这里关闭mysql的自动提交功能

  $a=$pdo->query("insert into tongxue values('130042106','谭勇','男');

  $b=$pdo->query("insert into tongxue values('130042100','猪八戒','男')");

  if($a==true && $b==true){

  $pdo->commit();//提交事务

  } else{

  $pdo->rollback();//事务回滚

  }

  ?>

  用mysql_num_rows()函数能数出数据库返回结果集的行数,以此来判断该用户输入的用户名和密码是否正确,那么在pdo中我们如何实现这个功能呢?

  在pdo中有一个函数pdo::fetchall(),他的作用是将从数据库返回的一个结果集全部赋给获取它的值,之后再用count()函数数出行数具体事例代码如下

  query("set names gbk");//设置从数据库里面传递过来的数据的编码格式

  $sql="select * from tongxue where id='130042106'";

  $shuju=pdo->prepare($sql);//这就是我们所说的预处理

  $shuju->execute();//执行预处理的结果;

  $jg=$shuju->fetchall(PDO::FETCH_ASSOC);//将返回的结果集以数组的方式全部返回给变量$jg

  $hangshu=count($jg);//数出结果集的行数

  if($hangshu>0){

  echo '查询出来是有这个人的';

  } else{

  echo '查询出来是没有这个人的';

  }

  ?>

  当我们的页面运行的sql语句较多时,可以用pdo当中的预处理,来减缓服务器的压力,这对于那些要做大型网站的项目来说是一个不错的选择,因为大型网站一天的浏览量是几万或十几万的。

  下面我们来看看pdo的预处理

  query("set names gbk");//设置从数据库里面传递过来的数据的编码格式

  $sql="insert into tongxue values('130042100','老师','男')";//我们要执行的sql语句

  $shuju=$pdo->prepare($sql); //预处理

  $shuju->execute();//执行预处理的sql语句

  if($shuju){

  echo '执行成功';

  } else{

  echo '执行失败';

  }

  ?>

上述内容就是php 中怎么使用pdo连接数据库,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI