zoukankan      html  css  js  c++  java
  • php mysqli扩展库之预处理操作

    分享下php使用mysqli扩展库进行预处理操作的二个例子,有意研究mysqli用法的朋友,可以参考学习下,一定会有所帮助的。

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

    01 <?php
    02 //mysqli扩展库 预处理技术
    03 //1、创建mysqli对象
    04 $mysqli new MySQLi("localhost","root","root","test");
    05 if($mysqli->connect_error){
    06 die($mysqli->conncet_error);
    07 }
    08 //2、创建预编译对象
    09 $sql="insert into user1(name,password,email,age) values(?,?,?,?)";
    10 $mysqli_stmt=$mysqli->prepare($sql);
    11  
    12 //绑定参数 www.jbxue.com
    13 $name="小芳";
    14 //$password=md5("ffff");
    15 $password="123456";
    16 $email="xiaofang@jbxue.com";
    17 $age=18;
    18  
    19 //参数绑定->给?号赋值 这里类型和顺序要一致
    20 $mysqli_stmt->bind_param("sssi",$name,$password,$email,$age);
    21  
    22 //执行
    23 $b=$mysqli_stmt->execute();
    24  
    25 //继续添加
    26 $name="小杨";
    27 $password="123456";
    28 $email="xiaoyang@jbxue.com";
    29 $age=18;
    30  
    31 //参数绑定->给?号赋值 这里类型和顺序要一致
    32 $mysqli_stmt->bind_param("sssi",$name,$password,$email,$age);
    33  
    34 //执行
    35 $b=$mysqli_stmt->execute();
    36  
    37 //继续添加
    38  
    39 $name="小G";
    40 $password="123456";
    41 $email="xiaoG@jbxue.com";
    42 $age=18;
    43  
    44 //参数绑定->给?号赋值 这里类型和顺序要一致
    45 $mysqli_stmt->bind_param("sssi",$name,$password,$email,$age);
    46  
    47 //执行
    48 $b=$mysqli_stmt->execute();
    49  
    50 if(!$b){
    51 echo "操作失败".$mysqli_stmt->error;
    52 }else{
    53 echo "操作成功";
    54 }
    55 //关闭预编译
    56 $mysqli_stmt->close();
    57 $mysqli->close();
    58 ?>

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

    01 <?php
    02 //使用预处理查询id>5的用户id name email
    03 $mysqli=new MySQLi("localhost","root","root","test");
    04 if($mysqli->connect_error){
    05 die($mysqli->connect_error);
    06 }
    07  
    08 //创建预编译对象
    09 $sql="select id,name,email from user1 where id>?";
    10 $mysqli_stmt=$mysqli->prepare($sql);
    11  
    12 $id=5;
    13 //绑定参数
    14 $mysqli_stmt->bind_param("i",$id);
    15 //绑定结果集
    16 $mysqli_stmt->bind_result($id,$name,$email);
    17 //执行
    18 $mysqli_stmt->execute();
    19  
    20 //取出绑定的值
    21 while($mysqli_stmt->fetch()){
    22 echo "<br/>$id--$name--$email";
    23 }
    24  
    25 //关闭资源
    26 //释放结果
    27 $mysqli_stmt->free_result();
    28 //关闭与编译语句
    29 $mysqli_stmt->close();
    30 //关闭连接
    31 $mysqli->close();
    32 ?>
    本文出处参考:http://www.jbxue.com/article/11825.html
  • 相关阅读:
    STL map
    HDU1372 Knight Moves BFS
    HDU1072 Nightmare BFS
    discuz论坛发帖添加字段
    gridview自定义button事件 ,无法触发 onrowcommand
    discuz 怎么开启评分!!!
    discuz学习网站收集
    discuz扩展工具集合
    童话世界整理“说说”
    asp.net中Literal与label的区别
  • 原文地址:https://www.cnblogs.com/linuxnotes/p/3313374.html
Copyright © 2011-2022 走看看