mysqli预处理技术使用详解

本篇文章,介绍了PHP mysqli扩展库 预处理技术的使用分析。需要的朋友参考下

相关mysql视频教程推荐:《mysql教程》

1、使用mysqli扩展库 预处理技术 mysqli stmt 向数据库添加3个用户

connect_error){
        die($mysqli->conncet_error);
    }
    //2、创建预编译对象
    $sql="insert into user1(name,password,email,age) values(?,?,?,?)";
    $mysqli_stmt=$mysqli->prepare($sql);
    //绑定参数
    $name="小芳";
    $password="123456";
    $email="xiaofang@126.com";
    $age=18;

    //参数绑定->给?号赋值 这里类型和顺序要一致
    $mysqli_stmt->bind_param("sssi",$name,$password,$email,$age);
    //执行
  

$b=$mysqli_stmt->execute(); //继续添加 $name="小杨"; $password="123456"; $email="xiaoyang@126.com"; $age=18; //参数绑定->给?号赋值 这里类型和顺序要一致 $mysqli_stmt->bind_param("sssi",$name,$password,$email,$age); //执行 $b=$mysqli_stmt->execute(); //继续添加 $name="小G"; $password="123456"; $email="xiaoG@126.com"; $age=18; //参数绑定->给?号赋值 这里类型和顺序要一致 $mysqli_stmt->bind_param("sssi",$name,$password,$email,$age); //执行 $b=$mysqli_stmt->execute(); if(!$b){ echo "操作失败".$mysqli_stmt->error; }else{ echo "操作成功"; } //关闭预编译 $mysqli_stmt->close(); $mysqli->close(); ?>


2、使用预处理查询id>5的用户id name email

5的用户id name email
    $mysqli=new MySQLi("localhost","root","root","test");
    if($mysqli->connect_error){
        die($mysqli->connect_error);
    }
    //创建预编译对象
    $sql="select id,name,email from user1 where id>?";
    $mysqli_stmt=$mysqli->prepare($sql);

    $id=5;
    //绑定参数
    $mysqli_stmt->bind_param("i",$id);
    //绑定结果集
    $mysqli_stmt->bind_result($id,$name,$email);
    //执行
    $mysqli_stmt->execute();
    //取出绑定的值
    while($mysqli_stmt->fetch()){
        echo "
$id--$name--$email"; } //关闭资源 //释放结果 $mysqli_stmt->free_result(); //关闭与编译语句 $mysqli_stmt->close(); //关闭连接 $mysqli->close(); ?>