欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

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

程序员文章站 2022-04-14 15:25:13
...
本文分享下php使用mysqli扩展库进行预处理操作的二个例子,有意研究mysqli用法的朋友,可以参考学习下,一定会有所帮助的。

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

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

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 "
$id--$name--$email"; } //关闭资源 //释放结果 $mysqli_stmt->free_result(); //关闭与编译语句 $mysqli_stmt->close(); //关闭连接 $mysqli->close(); ?>