PHP - PDO 之 mysql 参数绑定

<?php
    /* pdo 学习 */
    $dsn    = ‘mysql:host=localhost;dbname=cswl‘;//构建连接dsn
    $db     = new pdo($dsn,‘root‘,‘‘);//实例化pdo【第二个参数是用户名,第三个为密码】
    #.查询
    $obj    = $db->prepare("select * from level_class where id = ?");
    $id     = 28;
    $obj->bindParam(1,$id,PDO::PARAM_INT);
    $obj->execute();
    $result = $obj->fetchALL(PDO::FETCH_ASSOC);
    var_dump($result);
?>

pdo支持两种参数绑定方案:

1、如果sql‘语句中用的是?号作为占位符,那么在bindParam参数中,第一个参数就以占位符的顺序填写,比如1代表第一个?号的值

2、如果sql语句中用的是 " :变量名  "作为占位符,那么bingParam参数中,第一个参数就是“ :变量名 ”

PS:bindParam函数:par1,占位符标识,par2:值(必须以变量形式体现,否则报:Cannot pass parameter 2),par3:值的模式

有   PDO::PARAM_INT,PDO::PARAM_STR,....

PHP - PDO 之 mysql 参数绑定

时间: 2024-08-11 09:41:36

PHP - PDO 之 mysql 参数绑定的相关文章

如何使用PDO查询Mysql来避免SQL注入风险?ThinkPHP 3.1中的SQL注入漏洞分析!

当我们使用传统的 mysql_connect .mysql_query方法来连接查询数据库时,如果过滤不严,就有SQL注入风险,导致网站被攻击,失去控制.虽然可以用mysql_real_escape_string()函数过滤用户提交的值,但是也有缺陷.而使用PHP的PDO扩展的 prepare 方法,就可以避免 sql injection 风险. PDO(PHP Data Object) 是PHP5新加入的一个重大功能,因为在PHP 5以前的php4/php3都是一堆的数据库扩展来跟各个数据库的

PHP PDO操作MYSQL

PHP PDO操作MYSQL 学习要点: 1.        PHP PDO配置 2.        连接mysql及异常处理 3.        query,exec用法详解 4.        预处理prepare()用法详解 5.        PDO错误处理模式和事务处理 6.        获取和遍历结果集 7.        常用函数说明   我的博客:http://www.unitbuy.com PDO配置 PHP 数据对象 (PDO) 扩展可以支持绝大多数的主流的数据库,如下 C

pdo连接mysql操作方法

PDO常用方法: PDO::query()主要用于有记录结果返回的操作(PDOStatement),特别是select操作. PDO::exec()主要是针对没有结果集合返回的操作.如insert,update等操作.返回影响行数.PDO::lastInsertId()返回上次插入操作最后一条ID,但要注意:如果用insert into tb(col1,col2) values(v1,v2),(v11,v22)..的方式一次插入多条记录,lastinsertid()返回的只是第一条(v1,v2)

php PDO连接mysql~高手略过

最近在linux装了新的环境,php5.6+mysql5.5+nginx.然后用原来的mysql链接数据库出现的错误. 原因就是说连接数据库的方法太旧.建议我用mysqli和PDO来链接数据库. 好吧,咱也不能落后,使用mysqli的确也简单了不少,但是PDO貌似更简单.效率也会得到提升.根据官方文档,貌似对于sql注入的一些风险也做了屏蔽.所以今天写的 博客就是关于php用PDO连接mysql的一些介绍啦! [PDO是啥] PDO是PHP 5新加入的一个重大功能,因为在PHP 5以前的php4

PDO 对 mysql的基本操作

PDO扩展操作 <?php $dsn = 'mysql:dbname=yii2;host=localhost'; $user = 'root'; $password = '123456'; try { $dbh = new PDO($dsn,$user,$password,array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION)); }catch(PDOException $e) { echo 'Connection failed: ' . $e-&

php类模块引擎PDO操作MySQL数据库简单阐述

PDO是什么呢? 通俗说就是别人写的一个“数据库操作工具类”,它非常强大,可以应对市面上几乎所有主流数据库, 具体应用时候有这样一个关系: 即,要操作某种数据,就得去“打开”对应的pdo引擎. 在php.ini的配置文件中,无非就是一个“模块”而已,我们只需要把分号删掉就表示开启!如下: 改为: 使用pdo连接mysql数据库 $dsn = "mysql:host=服务器地址/名称:port=端口号:dbname=数据库名"; $opt = array(PDO::MYSQL_ATTR_

封装:PDO与MySQL之间的无缝切换

以下的例子是将MySQL和PDO封装好,再无缝切换: 文件目录: config.php文件:   <?php return array( // 数据库配置 'DB' => array( 'default_extension'=>'mysql', //这里可以是pdo或mysql ), // 分页配置 // 上传配置 // 图像处理配置 ); I_DB.interface.php文件: <?php /** * 数据库接口 */ interface I_DB { public stat

Hibernate5-动态参数绑定

1.创建项目,项目名称hibernatedemo5,目录结构如图所示 2.在项目中创建lib目录存储jar文件,目录结构如图所示 3.在src目录中创建实体Bean Forum,包名(com.mycompany.demo.bean),如图所示 4.实体Bean Forum的内容如下 package com.mycompany.demo.bean; public class Forum { private int fid; private String name; public Forum() {

PDO连接mysql数据库

1.PDO简介 PDO(PHP Data Object) 是PHP 5 中加入的东西,是PHP 5新加入的一个重大功能,因为在PHP 5以前的php4/php3都是一堆的数据库扩展来跟各个数据库的连接和处理,什么 php_mysql.dll.php_pgsql.dll.php_mssql.dll.php_sqlite.dll等等. PHP6中也将默认使用PDO的方式连接,mysql扩展将被作为辅助 2.PDO配置 PHP.ini中,去掉"extension=php_pdo.dll"前面