PHP之PDO学习
来源:互联网 发布:淘宝怎么提取卡密 编辑:程序博客网 时间:2024/04/28 22:25
1 PDO连接数据库
<?phptry{$dsn = "mysql:host=localhost;dbname=test";$username = "root";$passwd = "root";$pdo = new PDO($dsn,$username,$passwd);echo "数据库连接成功";}catch(PDOException $e){ echo $e->getMessage();}2 exec()
执行一条sql语句,并返回所受影响的行数
3 query() //查询
执行一条sql语句,并返回一个PDOstatement对象
4 prepare() //查询 通过execute()执行预处理语句
— 准备要执行的SQL语句并返回一个 PDOStatement 对象;
5 quote()
— 为SQL语句中的字符串添加引号。
6 lastInsertId()
— 返回最后插入行的ID或序列值
7 setAttribute()
— 设置属性
8 getAttribute ()
— 取回一个数据库连接的属性
9 print_r可以输出stirng、int、float、array、object等,输出array时会用结构表示,print_r输出成功时返回true;
10 setFetchMode(PDO::PETCH_OBJ) 设置fetch()返回的类型
setFetchMode(PDO::FETCH_OBJ)
11 PDO::FETCH_ASSOC 返回的是查询结果的关联,默认是PDO::FETCH_BOTH返回查询结果的关联和索引;PDO::FETCH_OBJ返回的是一个对象
fetch(PDD::FECTCH_OBJ)
12 SQL注入
' or 1=1 #
13 防止SQL注入
1)---------
$username = $_POST["username"];$password = $_POST["password"];try{ $pdo = new PDO("mysql:host=localhost;dbname=test",'root','root'); $username = $pdo->quote($username); $sql = "select * from user where username = {$username} and password = '{$password}'"; $stmt = $pdo->query($sql); echo $stmt->rowCount();}catch (PDOException $e){ echo $e->getMessage();}
2)------占位符方式一
$sql = "select * from user where username = :username and password = :password";$stmt = $pdo->prepare($sql);$stmt->execute(array(":username"=>$username,":password"=>$password));echo $stmt->rowCount();
3)------占位符方式2(推荐)
//占位符方式2 $sql = "select * from user where username = ? and password = ?"; $stmt = $pdo->prepare($sql); $stmt->execute(array($username,$password)); echo $stmt->rowCount();
阅读全文
0 0
- PHP之PDO学习
- php学习笔记之PDO异常处理
- php学习笔记之PDO预处理
- PHP PDO 学习笔记
- PHP PDO深入学习
- PHP PDO 学习笔记
- PHP PDO 学习笔记
- PHP PDO 学习笔记
- PHP PDO学习笔记
- PHP PDO 学习笔记
- PHP PDO 学习笔记
- PHP PDO 学习笔记
- php pdo学习笔记
- PHP数据库连接之PDO
- PHP之PDO
- php 基础之PDO
- php扩展之PDO
- php学习笔记之PDO连接数据库及一些操作
- OC 属性的内存管理
- MySQL-- 安装错误(install/remove of the service denied)
- mybatis-generator 生成代码出错
- Chloe and the sequence CodeForces
- POJ
- PHP之PDO学习
- H
- Jdk8之lambda表达式的使用(一)
- dlib-18.18 install on win7+vs2015
- github上万颗star的21个JAVA(19个Android相关)开发框架,知道多少,用过多少
- POJ 3268
- 哈夫曼树--九度OJ-1172
- 网站文章编辑的注意事项
- EMF学习笔记(三)——使用EMF编程——持久化