zoukankan      html  css  js  c++  java
  • PHP_PDO预处理

      第一步、发送预处理语句:prepare()
      这里需要调用PDO对象的prepare方法,得到PDOStatement对象(结果对象)。

    #实例化PDO类
    $pdo = new PDO($dns,$user,$pass);
    #写一条预处理语句(:param 为执行的动态数据)
    $sql = 'insert into test values(:name, :age, :gender)';
    #发送预处理语句
    $stmt = $pdo->prepare($sql);

      第二步、绑定参数:bindParam()

    #实例化PDO类
    $pdo = new PDO($dns,$user,$pass);
    #写一条预处理语句(:param 为执行的动态数据)
    $sql = 'insert into test values(:name, :age, :gender)';
    #发送预处理语句
    $stmt = $pdo->prepare($sql);
    #绑定参数
    $name = '张文远';
    $age = 55;
    $gender = 1;
    #这里的1,2,3代表占位符,第几个参数
    $stmt->bindParam(1,$name);
    $stmt->bindParam(2,$name);
    $stmt->bindParam(3,$name);

      第三步、执行预处理语句:execute()

      如果执行成功就返回true,否则就是false

    #实例化PDO类
    $pdo = new PDO($dns,$user,$pass);
    #写一条预处理语句(:param 为执行的动态数据)
    $sql = 'insert into test values(:name, :age, :gender)';
    #发送预处理语句
    $stmt = $pdo->prepare($sql);
    #绑定参数
    $name = '张文远';
    $age = 55;
    $gender = 1;
    #这里的1,2,3代表占位符,第几个参数
    $stmt->bindParam(1,$name);
    $stmt->bindParam(2,$age);
    $stmt->bindParam(3,$gender);
    #执行预处理语句
    $result = $stmt->execute();
    if ($result) {
        echo '预处理语句执行成功!';
    }else{
        echo '预处理语句执行失败!';
    }

      绑定参数的其他方法
      ①使用  :变量名 作为占位符

    #实例化PDO类
    $pdo = new PDO($dns,$user,$pass);
    #写一条预处理语句(:param 为执行的动态数据)
    $sql = 'insert into test values(:name, :age, :gender)';
    #发送预处理语句
    $stmt = $pdo->prepare($sql);
    #绑定参数
    $name = '张文远';
    $age = 55;
    $gender = 1;
    #这里的 :param 代表占位符,不用按照顺序
    $stmt->bindParam(:name,$name);
    $stmt->bindParam(:age,$age);
    $stmt->bindParam(:gender,$gender);
    #执行预处理语句
    $result = $stmt->execute();
    if ($result) {
        echo '预处理语句执行成功!';
    }else{
        echo '预处理语句执行失败!';
    }

      使用数组绑定参数

    #实例化PDO类
    $pdo = new PDO($dns,$user,$pass);
    #写一条预处理语句(:param 为执行的动态数据)
    $sql = 'insert into test values(:name, :age, :gender)';
    #发送预处理语句
    $stmt = $pdo->prepare($sql);
    #绑定参数
    $name = '张文远';
    $age = 55;
    $gender = 1;
    $arr = array(
        ':name' =>$name,
        ':age'    =>$age,
        'gender'=>$gender
        );
    #执行预处理语句
    $result = $stmt->execute($arr);
    if ($result) {
        echo '预处理语句执行成功!';
    }else{
        echo '预处理语句执行失败!';
    }
  • 相关阅读:
    Java和JavaScript的时间互传
    session.createQuery()不执行和java.lang.reflect.InvocationTargetException
    [转载]标签a的href和onclick
    [转载]前端优化指南
    POJ1328-Radar Installation
    POJ1323-Game Prediction
    codinglife主题小修改和有意思的博客挂件
    POJ1050-To the Max
    HDU4323-Magic Number(levenshtein distance-编辑距离)
    HDU2955-Robberies
  • 原文地址:https://www.cnblogs.com/bk233/p/7364168.html
Copyright © 2011-2022 走看看