分享下php使用mysqli扩展库进行预处理操作的二个例子,有意研究mysqli用法的朋友,可以参考学习下,一定会有所帮助的。
例1、使用mysqli扩展库的预处理技术 mysqli stmt 向数据库添加3个用户
04 |
$mysqli = new MySQLi("localhost","root","root","test"); |
05 |
if($mysqli->connect_error){ |
06 |
die($mysqli->conncet_error); |
09 |
$sql="insert into user1(name,password,email,age) values(?,?,?,?)"; |
10 |
$mysqli_stmt=$mysqli->prepare($sql); |
14 |
//$password=md5("ffff"); |
16 |
$email="xiaofang@jbxue.com"; |
19 |
//参数绑定->给?号赋值 这里类型和顺序要一致 |
20 |
$mysqli_stmt->bind_param("sssi",$name,$password,$email,$age); |
23 |
$b=$mysqli_stmt->execute(); |
28 |
$email="xiaoyang@jbxue.com"; |
31 |
//参数绑定->给?号赋值 这里类型和顺序要一致 |
32 |
$mysqli_stmt->bind_param("sssi",$name,$password,$email,$age); |
35 |
$b=$mysqli_stmt->execute(); |
41 |
$email="xiaoG@jbxue.com"; |
44 |
//参数绑定->给?号赋值 这里类型和顺序要一致 |
45 |
$mysqli_stmt->bind_param("sssi",$name,$password,$email,$age); |
48 |
$b=$mysqli_stmt->execute(); |
51 |
echo "操作失败".$mysqli_stmt->error; |
56 |
$mysqli_stmt->close(); |
例2、使用预处理查询id>5的用户id name email
02 |
//使用预处理查询id>5的用户id name email |
03 |
$mysqli=new MySQLi("localhost","root","root","test"); |
04 |
if($mysqli->connect_error){ |
05 |
die($mysqli->connect_error); |
09 |
$sql="select id,name,email from user1 where id>?"; |
10 |
$mysqli_stmt=$mysqli->prepare($sql); |
14 |
$mysqli_stmt->bind_param("i",$id); |
16 |
$mysqli_stmt->bind_result($id,$name,$email); |
18 |
$mysqli_stmt->execute(); |
21 |
while($mysqli_stmt->fetch()){ |
22 |
echo "<br/>$id--$name--$email"; |
27 |
$mysqli_stmt->free_result(); |
29 |
$mysqli_stmt->close(); |
本文出处参考:http://www.jbxue.com/article/11825.html
- 【小结】有关mysql扩展库和mysqli扩展库的crud操作封装
现阶段php如果要操作mysql数据库 php给我们提供了3套库 1.mysql扩展库 面向过程操作 2.mysqli扩展库 面向对象操作和面向过程操作并存 安全性和效率高于mysql扩展库 ...
- PHP mysqli 扩展库(面向对象/数据库操作封装/事务控制/预编译)
1.和mysql扩展库的区别: (1 安全性.稳定性更高 (2 提供了面向对象和面向过程两种风格 2.php.ini 中的 extension=php_mysqli.dll 解除封印 3.面 ...
- mysqli扩展库的预处理技术 mysqli stmt
//预编译演示 //1,创建mysqli对象 $mysqli=new mysqli("localhost","root",""," ...
- mysqli扩展库的 预处理技术 mysqli stmt
问题的提出? 现在需要向mysql数据库添加100个用户,请问如何实现? 思路: 使用for循环100次,向数据库中添加100个用户. 使用批量添加 $sql1=”insert xxx”; $ssql ...
- mysqli 扩展库的预处理技术(mysqli_stmt)
提出问题 现在需要向mysql数据库中添加100个用户,请问如何实现? 方法一:for循环100次 方法二:使用批量添加 $sqls="insert xxx"; $sqls.=&q ...
- mysqli扩展库的预处理
预处理的特点:1.效率高,执行速度快 2.安全性高,可以防止sql注入 $mysqli 中的函数 $stmt=$mysqli->prepare($sql); 预备一条s ...
- mysqli扩展库操作mysql数据库
配置环境 配置php.ini文件让php支持mysqli扩展库 extension=php_mysqli.dll 建库建表 详见博客 “mysql扩展库操作mysql数据库” 查询数据库 <?p ...
- 使用php的mysqli扩展库操作mysql数据库
简单介绍mysqli: 1.mysqli(mysql improve mysql扩展库的增强版) mysql扩展库和mysqli扩展库的区别 1.mysqli的稳定性 安全性 和 执行效率有所提高 ...
- PHP使用mysqli扩展库实现增删改查(面向对象版)
mysqli扩展库是mysql扩展库的改进版本,在mysql扩展库的基础上提高了稳定性和效率,mysqli扩展库有两套东西,一套就是面向过程的mysqli另一套是面向对象的mysqli.操作方式大体和 ...
随机推荐
- iOS valueForKeyPath快速计算求和、平均值、最大、最小
iOS中开始取出数组中最大值,最小值除了使用排序的方式,还可以使用valueForKeyPath的方式直接取出 array = @[@(10),@(100),@(20),@(97)]; CGFloat ...
- cnetos 6.7彻底解决vmware NAT网络问题
cnetos 6.7彻底解决vmware NAT网络问题 vmnet8在nat时使用 vmnet1 在桥接时使用 *解决Windows不能ping通linux的问题 vmnet8相当于一个网卡,虚 ...
- Java中的动态代理以及Proxy类的偷瞄
动态代理机制 所谓动态代理,即通过代理类Proxy的代理,接口和实现类之间可以不直接发生联系,而可以在运行期(Runtime)实现动态关联. Java动态代理类位于Java.lang.reflect包 ...
- knockout+weui+zepto
主文件wxapp.ts 1>在ts中,建议继承componentui //操作菜单表 actionsheet showactionsheet { title 上拉菜单标题 btns 操作组 建议 ...
- nginx源代码分析--nginx模块解析
nginx的模块很之多.能够觉得全部代码都是以模块的形式组织.这包含核心模块和功能模块,针对不同的应用场合.并不是全部的功能模块都要被用到,附录A给出的是默认configure(即简单的httpser ...
- dp解Codeforces Round #260 (Div. 2)C. Boredom
#include<iostream> #include<map> #include<string> #include<cstring> #include ...
- VLC Web插件的浏览器兼容性
网页插件实现原理 IE浏览器基于Activex插件来实现,非IE浏览器采用NPAPI来实现,所以,非浏览器需要支持NPAPI来实现. IE浏览器 FF浏览器(版本小于52) 原因从 Firefox 版 ...
- flex初始化方法
initalize是初始化,creationcomplete是创建完成,applicationComplete是应用程序中所有的实例都创建完成后才执行,三者的执行顺序是intalize creatio ...
- Redis特性和应用场景
Redis特性 速度快 Redis使用标准C编写实现,而且将所有数据加载到内存中,所以速度非常快.官方提供的数据表明,在一个普通的Linux机器上,Redis读写速度分别达到81000/s和11000 ...
- winform 的 checklistbox动态绑定并选中值
绑定的代码:这里绑定的是一个泛型 BLL.PowerBLL powerbll = new BLL.PowerBLL(); checkpower.DataSource = powerbll.GetAll ...