分享下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

最新文章

  1. 开发错误记录9:Application无法跳转到Activity
  2. C++模板学习
  3. Linux的sleep()和usleep()的使用和区别
  4. rsync安装及配置
  5. form 登陆跳转页面练习(未连接数据库)和连接数据库版
  6. linux下shell显示-bash-4.1#不显示路径解决方法
  7. HDU 1016 Prime Ring Problem (DFS)
  8. Win7 IIS (HTTP Error 500.21 - Internal Server Error)解决
  9. (八)学习MVC之三级联动
  10. 【UVA12093】Protecting Zonk (树形DP)
  11. python手记(32)
  12. JQuery的父、子、兄弟节点查找,节点的子节点循环
  13. location.href使用方法总结
  14. Asp.net 插入或更改查询字符串
  15. Java Spring MVC项目搭建(二)——项目配置
  16. PortableApps使用入门
  17. [BZOJ]1063 道路设计(Noi2008)
  18. mysql驱动问题
  19. (56)Wangdao.com第八天_JavaScript 流程控制语句
  20. [转]简单科普私钥、地址、助记词、Keystore的区别

热门文章

  1. C# Type.GetConstructor() 根据构造函数参数获取实例对象(一)
  2. linux mysql 5.7.17 编译安装小记
  3. awk 截取字符串
  4. Windows 7 SP1和Windows Server 2008 SP1的Event ID 10错误的解决方法
  5. redis主从备份
  6. 介绍两款Linux文件恢复工具,ext3grep与extundelete https://www.cnblogs.com/lazyfang/p/7699994.html
  7. 复制代码后调试程序,报错:在当前上下文中不存在名称“InitializeComponent”
  8. Java sql server数据库连接成功
  9. ChemDraw破解版真的不大好用
  10. Laravel5.1 Middleware中间件(初级)