文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

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

2024-04-02 19:55

关注

本篇文章为大家展示了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连接数据库,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注亿速云行业资讯频道。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯