php PDO预处理
时间:2021-07-09
本文章向大家介绍php PDO预处理,主要包括php PDO预处理使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
PDOStatement类:准备语句,处理结果集
也就是预处理,安全,高效,推荐使用
两种占位符号:?参数 索引数组,按索引顺序使用
名子参数 关联数组,按名称使用,和顺序无关,以冒号开头,自己定义
$stmt=$pdo->prepare($sql); $sql可是是任意sql语句,这与mysqli不同
两种点位符号
try{ $pdo=new PDO("mysql:host=localhost;dbname=mysqldb","root","snail"); }catch(PDOException $e){ echo $e->getMessage(); } //准备一条语句,并放到服务器端,而且编译 $stmt=$pdo->prepare("insert into shop(name,price)values(?,?)"); // $stmt=$pdo->prepare("insert into shop(name,price)values(:na,:pr)"); //绑定参数(变量和参数绑定) $stmt->bindparam(1,$name); $stmt->bindparam(2,$price); // $stmt->bindparam(":na",$name); // $stmt->bindparam(":pr",$price); $name="liwu11"; $price=234.4311; if($stmt->execute()){ echo "执行成功"; echo "最后插入的ID:".$pdo->lastInsertId(); }else{ echo "执行失败"; } ?> //以数组方式向服务器传值 try{ $pdo=new PDO("mysql:host=localhost;dbname=mysqldb","root","snail"); }catch(PDOException $e){ echo $e->getMessage(); } $stmt=$pdo->prepare("select * from shop where id >:id"); $stmt->execute(array(':id'=>130)); $row=$stmt->fetch(); print_r($row); //用fetch(),fetchAll()来获取查询结果 try{ $pdo=new PDO("mysql:host=localhost;dbname=mysqldb","root","snail"); }catch(PDOException $e){ echo $e->getMessage(); } $stmt=$pdo->prepare("select * from shop where id >:id"); $stmt->execute(array(':id'=>130)); /* 单条获取fetch() $stmt->setFetchMode(PDO::FETCH_ASSOC); //设置获取模式 while($row=$stmt->fetch()){ print_r($row); } */ try{ $pdo=new PDO("mysql:host=localhost;dbname=mysqldb","root","snail"); }catch(PDOException $e){ echo $e->getMessage(); } $stmt=$pdo->prepare("select * from shop where id >:id"); $stmt->execute(array(':id'=>130)); /* 单条获取fetch() $stmt->setFetchMode(PDO::FETCH_ASSOC); //设置获取模式 while($row=$stmt->fetch()){ print_r($row); } */ //多条获取fetchAll() // $stmt->setFetchMode(PDO::FETCH_ASSOC); $data=$stmt->fetchAll(PDO::FETCH_ASSOC); //也可以用上句进行设置 print_r($data); //以表格输出查询结果 try{ $pdo=new PDO("mysql:host=localhost;dbname=mysqldb","root","snail"); }catch(PDOException $e){ echo $e->getMessage(); } $stmt=$pdo->prepare("select id,name,price from shop where id >:id"); $stmt->execute(array(':id'=>130)); $stmt->bindColumn(id,$id); $stmt->bindColumn(name,$name); $stmt->bindColumn(price,$price); for($i=0;$i<$stmt->columncount();$i++){ $field=$stmt->getColumnMeta($i); } while($stmt->fetch()){ } echo "行:".stmt->rowcount().""; echo "列:".stmt->columncount().""; ?>
二、PDO事务提交
原文地址:https://www.cnblogs.com/shenmiyang/p/14989895.html
- css3弹性盒子模型——回顾。
- confluence与jira账号对接、查看到期时间及问题总结
- 物联网、人工智能时代来临五大隐忧不可不提防
- Contact Manager Web API 示例[1]CRUD 操作
- 3个域名交易:fde.com11万被秒
- 新手指南OpenStack:Nova的基础知识
- Python-装饰器详解
- Contact Manager Web API 示例[2] Web API Routing
- Android一些关于分辨率和布局的设置
- log4net 中错误 System.Web.HttpException (0x80004005): 文件不存在
- Contact Manager Web API 示例[2] Web API Routing
- Python内置函数
- NET实现微信公共平台上传下载多媒体文件
- css3基础知识——回顾
- php概述
- php教程
- php环境搭建
- PHP书写格式
- php变量
- php常量
- PHP注释
- php数组
- php字符串 string
- PHP整型 integer
- PHP浮点型 float
- php布尔型
- php数据类型之数组
- php数据类型之对象
- php数据类型之null
- php数据类型之间的转换
- php运算符
- php表达式
- PHP循环控制
- PHP流程控制
- php函数
- php全局变量
- PHP魔术变量
- php命名空间
- php 日期
- PHP包含文件
- php文件
- PHP 文件上传
- php Cookies
- php Sessions
- php email
- php安全email
- php错误处理
- PHP异常处理
- php过滤器
- PHP 高级过滤器
- php json
- php 表单
- PHP MySQL 简介
- PHP 连接 MySQL
- php创建数据库
- php 创建表
- php mysq 插入数据
- PHP MySQL 插入多条数据
- PHP MySQL 预处理语句
- php mysql 读取数据
- php mysql where
- PHP MySQL Order By
- PHP MySQL Update
- PHP MySQL Delete
- php ODBC
- 【漏洞复现】Weblogic漏洞搭建与复现:CVE-2018-2894 任意文件上传
- 终于把进程和线程学会了
- 对方向你转账60元--三角函数方法精确位的实现
- 牛客网-树的子结构
- 牛客网-删除链表中重复的节点
- 牛客网-包含min函数的栈
- 牛客网-反转链表
- 牛客网-替换空格
- 手把手教你破解文件密码、wifi密码、网页密码
- 如何安装 Elastic 栈中的 Logstash
- 你的GitHub项目被封存到北极了吗?
- Logstash: 如何创建可维护和可重用的 Logstash 管道
- 手把手教你微信好友头像形成指定的文字
- Logstash: 应用实践 - 装载 CSV 文档到 Elasticsearch
- LeetCode 剑指 Offer 28. 对称的二叉树