PHP中PDO DEMO
PDO =》 PHP DATABASE OBJECT
1、Select
$dsn = "mysql:host=127.0.0.1;port=3306;dbname=dbname";
$dbh = new PDO($dsn, 'root', 'password');
$sql = "select * from table_name where NAME = :name AND PWD = :pwd";
$sth = $dbh->prepare($sql);
$sth ->bindValue(':name', 'user');
$sth ->bindValue(':pwd', 'password');
$sth-> execute();
foreach($sth as $row) {
echo var_dump($row);
}
$dbh = null;
$dsn = "mysql:host=127.0.0.1;port=3306;dbname=dbname";
$dbh = new PDO($dsn, 'root', 'password');
$sql = "select * from table_name where NAME = ?AND PWD = ?";
$sth = $dbh->prepare($sql);
$sth ->bindValue(1, 'user');
$sth ->bindValue(2, 'password');
$sth-> execute();
foreach($sth as $row) {
echo var_dump($row);
} $dbh = null;
2、UPDATE
$dsn = "mysql:host=127.0.0.1;port=3306;dbname=dbname";
$dbh = new PDO($dsn, 'root', 'password');
$sql = "update table_name set name = :name where id = :id";
$sth = $dbh->prepare($sql);
$sth ->bindValue(':name', 'user');
$sth ->bindValue(':id', '1');
$flag = $sth-> execute(); // true or false
$dbh = null;
$dsn = "mysql:host=127.0.0.1;port=3306;dbname=dbname";
$dbh = new PDO($dsn, 'root', 'password');
$sql = "update table_name set name = ? where id = ?";
$sth = $dbh->prepare($sql);
$sth ->bindValue(1, 'user');
$sth ->bindValue(2, '1');
$flag = $sth-> execute(); // true or false
$dbh = null;
3、Insert
$dsn = "mysql:host=127.0.0.1;port=3306;dbname=dbname";
$dbh = new PDO($dsn, 'root', 'password');
$sql = "insert into table_name (name) values (:name)";
$sth = $dbh->prepare($sql);
$sth ->bindValue(':name', 'user');
$flag = $sth-> execute(); // true or false
$dbh = null;
$dsn = "mysql:host=127.0.0.1;port=3306;dbname=dbname";
$dbh = new PDO($dsn, 'root', 'password');
$sql = "insert into table_name (name) values (?)";
$sth = $dbh->prepare($sql);
$sth ->bindValue(1, 'user');
$flag = $sth-> execute(); // true or false
$dbh = null;
4、Delete
$dsn = "mysql:host=127.0.0.1;port=3306;dbname=dbname";
$dbh = new PDO($dsn, 'root', 'password');
$sql = "delete from table_name where id = :id";
$sth = $dbh->prepare($sql);
$sth ->bindValue(':id', '1');
$flag = $sth-> execute(); // true or false
$dbh = null;
$dsn = "mysql:host=127.0.0.1;port=3306;dbname=dbname";
$dbh = new PDO($dsn, 'root', 'password');
$sql = "delete from table_name where id = ?";
$sth = $dbh->prepare($sql);
$sth ->bindValue(1, '1');
$flag = $sth-> execute(); // true or false
$dbh = null;
每一部分的第二段代码都是用?和数字索引的方式来绑定参数,有的人可能不是很理解这些后绑定跟直接生成sql语句之后去执行有什么差别,其实不难理解。
假设你输入:
select * from table_name where id = ?
问号的部分如果直接动态生成就可能变成这样
select * from table_name where id = 1 or 1=1
而如果动态绑定的话,问号部分就被限制只能输入一个跟id字段类型相符合的变量,如果有sql注入就会编译不过
PHP中PDO DEMO的更多相关文章
- PHP5中PDO的简单使用
PHP5中PDO的简单使用 标签: php数据库mysql扩展extensionexception 2012-05-06 10:27 27753人阅读 评论(0) 收藏 举报 分类: PHP(6) ...
- github在README中展示demo
2017年更新,现在github再master分支直接就可以操作,所以我改了这篇文章 问题所在? 解决办法? 博主建议? 一:问题的所在 相信很多小胖友们在把自己的网页上传到github仓库中,都 ...
- PHP中PDO关闭连接的问题
在之前我们手写 mysql 的连接操作时,一般都会使用 mysql_close() 来进行关闭数据库连接的操作.不过在现代化的开发中,一般使用框架都会让我们忽视了底层的这些封装,而且大部分框架都已经默 ...
- PHP中PDO事务的使用方法
事务 (Transaction) 是操作数据库中很重要的一个功能, 它可以让你预定一条, 或者一系列 SQL 语句, 然后一起执行. 在执行的过程中, 如果其中的某条执行失败, 可以回滚所有已更改的操 ...
- PHP中PDO的配置与说明
住[PDO是啥] PDO是PHP5新加入的一个重大功能,因为在PHP5以前的php4/php3都是一堆的数据库扩展来跟各个数据库的连接和处理,什么php_mysql.dll.php_pgsql.dll ...
- PHP中PDO错误/异常(PDOException)处理
PDO 提供了三种不同的错误处理模式,以满足不同风格的应用开发: PDO::ERRMODE_SILENT 此为默认模式. PDO 将只简单地设置错误码,可使用 PDO::errorCode() 和 P ...
- PHP5中PDO的入门教程
PDO(PHP Data Object) 是PHP 5新出来的东西,在PHP 5.5中,更是强烈推荐使用PDO来处理数据库,将把所有的数据库扩展移到了PECL,那么默认就是没有了我们喜爱的php_my ...
- python之demo1----改编自turtle.py文件中的demo
""" 改编自turtle.py自带demo 执行 python -m turtledemo 命令查看系统内置demo的源码 绘制:需要通过import turtle引入 ...
- Github中展示demo
原文链接http://www.jianshu.com/p/75e30889e70a 第一步:找到Settings,点击 第二步:找到githubPages点击none,切换到master branch ...
随机推荐
- 一个简单C程序的汇编代码分析
几个重要的寄存器 eip - 用于存放当前所执行的指令地址 esp - 栈(顶)指针寄存器 ebp - 基址(栈底)指针寄存器 简单的C程序 int g(int x) { ; } int f(int ...
- canvas制作简单动画
在画布元素<canvas>中,除了绘制图形.图像.文字外,还可以制作一些简单的动画,制作过程十分简单,主要分为两步操作: 1.自定义一个函数,用于图形的移动或其他动作. 2.使用setIn ...
- 记录一下最近开发web移动前端的过程
两个项目 第一个是公司网站的移动端,我所在的公司是做某方面的新闻站的. 所以说页面基本是以一条条的新闻+图文混排为主,顶部有一个自动slider+触屏滑动的功能, 使用的是swipe插件,轻量,简洁非 ...
- My SQL 练习题
设有一数据库,包括四个表:学生表(Student).课程表(Course).成绩表(Score)以及教师信息表(Teacher).四个表的结构分别如表1-1的表(一)~表(四)所示,数据如表1-2的表 ...
- php echo字符串的连接格式
echo "<td align=\"center\"><img src=\""; 1. \" \" 2. ...
- 今日分享一点干货。PHP中课程表的实现。
首先贴代码,代码贴完再细说: 前段HTML: <div id="studentRead" class="reading" style="z-in ...
- Python -- 大小写转换
#小写转大写 strs = 'abcd' strs = strs.upper() print u'abcd小写转大写:', strs #大写转小写 strs = 'ABCD' strs = strs. ...
- 较优H圈matlab实现
大家好,我是小鸭酱,博客地址为:http://www.cnblogs.com/xiaoyajiang %解决完备图中的较优H圈 clc clear w = [ inf 6 1 8 3 1 ;... ...
- Spring MVC 和Struts2对比
Spring MVC和Struts2的区别: 1. 机制:spring mvc的入口是servlet,而struts2是filter,这样就导致了二者的机制不同. 2. 性能:spring会稍微比s ...
- linux tee 命令详解
man tee: NAME tee - read from standard input and write to standard output and files SYNOPSIS tee [OP ...