Heim  >  Artikel  >  Backend-Entwicklung  >  php mysqli扩展库之预处理操作的二个例子

php mysqli扩展库之预处理操作的二个例子

WBOY
WBOYOriginal
2016-07-25 08:56:22725Durchsuche
本文分享下php使用mysqli扩展库进行预处理操作的二个例子,有意研究mysqli用法的朋友,可以参考学习下,一定会有所帮助的。

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

<?php
//mysqli扩展库 预处理技术
//1、创建mysqli对象
$mysqli = new MySQLi("localhost","root","root","test");
if($mysqli->connect_error){
die($mysqli->conncet_error);
}
//2、创建预编译对象
$sql="insert into user1(name,password,email,age) values(?,?,?,?)";
$mysqli_stmt=$mysqli->prepare($sql);

//绑定参数 bbs.it-home.org
$name="小芳";
//$password=md5("ffff");
$password="123456";
$email="xiaofang@jbxue.com";
$age=18;

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

//执行
$b=$mysqli_stmt->execute();

//继续添加
$name="小杨";
$password="123456";
$email="xiaoyang@jbxue.com";
$age=18;

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

//执行
$b=$mysqli_stmt->execute();

//继续添加

$name="小G";
$password="123456";
$email="xiaoG@jbxue.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

<?php
//使用预处理查询id>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 "<br/>$id--$name--$email";
}

//关闭资源
//释放结果
$mysqli_stmt->free_result();
//关闭与编译语句
$mysqli_stmt->close();
//关闭连接
$mysqli->close();
?>


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn