分享下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.操作方式大体和 ...
随机推荐
- Redis_发布订阅(基础)
目录 前言 生产者和消费者 发布和订阅 Java实现 注意 前言 随着业务复杂, 业务的项目依赖关系增强, 使用消息队列帮助系统降低耦合度.发布订阅(pub/sub)是一种消息通信模式,主要目的是解除 ...
- typeof()关键字
typeof是GNU c标准的关键字. typeof()的作用是自动推导出括号中表达式的数据类型. #include <stdio.h> void func1(void) { ; type ...
- nodejs学习之简单服务器的编写
不废话了!直接上代码: var http = require('http'); //导入模块http http.createServer(function(request,response){ res ...
- Spring Boot MongoDB JPA 简化开发
使用SpringBoot提供的@Repository接口,可以完成曾经需要大量代码编写和配置文件定制工作.这些以前让新手程序员头疼,让有经验的程序员引以为傲的配置,由于框架的不断完善,变得不那么重要, ...
- Linux 文件管理(系统函数)
//read函数 #include <stdio.h> #include <stdlib.h> #include <unistd.h> /* STDIN_FILEN ...
- OpenCV中Kinect的使用(1)
图像处理中一般为了更好的获取外部信息都会使用到Kinect,其优势在于除了传统的RGB摄像头之外,还拥有一个获取深度信息的3D深度感应器,因此可以获得外界物体的3维信息实现物体的跟踪.手势识别等各项功 ...
- Hibernate查询语言(HQL)
Hibernate查询语言(HQL)与SQL(结构化查询语言)相同,但不依赖于数据库表. 我们在HQL中使用类名,而不是表名. 所以是数据库独立的查询语言. HQL的优点 HQL有很多优点. 它们如下 ...
- 获取云硬盘列表bug
有段时间没写博客了,主要还是刚进新公司,多少有点不适应(真会给自己找理由,明明是手里没技术,肚子里没货,能写啥!).前面几个星期都在修一修horizon的bug,这个没啥很大难度,就是用了一个djan ...
- 转:: 刺鸟:用python来开发webgame服务端(1)
来源:http://ciniao.me/article.php?id=9 --------------- 刺鸟原创文章,转载请注明出处 在开始之前,先简单描述一下项目的特点:我要实现的是一个mm ...
- XML 文档的结构
XML 文档的组成 一个XML文档由两部分构成:第一部分是文档序言,第二部分是文档元素(节点). 1.文档序言 文档序言通常位于XML文档的顶端,根元素之前出现,它是一个特定的包含XML 文档设定信息 ...