php Mysqli预处理语句二款实例代码

php教程 mysql教程i预处理语句二款实例代码

<?php
/*=========================mysqli_stmt预处理类(推荐使用)=========================*/
/*===============================优点:效率高,安全================================*/
 $mysqli=new mysqli("localhost","root","123456","xiaoqiangdb");
 
 
/*=================================非select语句==================================*/
 
 $sql="insert into shops教程(name,price,num,desn) values(?,?,?,?)";    //准备一条语句放到服务器中
 
 $stmt=$mysqli->prepare($sql);    //放到数据库教程
 
 $stmt->bind_param("sdis",$name,$price,$num,$desn);  //给占位符传值,类型-变量(不能是值)
 
 $name="zhangsan";
 $price=56.56;
 $num=66;
 $desn="good";
 
 $stmt->execute();    //执行
 
 echo "最后id".$stmt->insert_id;
 $stmt->close();

/*=================================select语句==================================*/

 $sql="select id,name,price,num,desn from shops where id>?";    //准备一条语句放到服务器中
 
 $stmt=$mysqli->prepare($sql);    //放到数据库
 
 $stmt->bind_param("i",$id);  //给占位符传值,类型-变量(不能是值)
 
 $stmt->bind_result($id,$name,$price,$num,$desn);    //绑定结果集
 
 $id=99;
 
 $stmt->execute();    //执行
 
 $stmt->store_result();    //一次性讲结果都取过来,才能移动指针和获取总数
 
 //字段信息
 $result=$stmt->result_metadata();
 
 while($field=$result->fetch_field()){
  echo $field->name;
 }
 echo "<br>";
 
 //记录信息
 $stmt->data_seek(2);   
 
 while($stmt->fetch()){
  echo "$id--$name--$price--$num--$desn<br>";
 }
 echo "记录总数:".$stmt->num_rows;
 
 $stmt->free_result();
 
 $stmt->close();

?>

实例二

<?php
 
$mysqli=new mysqli("localhost","root","","test");
$mysqli->query("set names 'gbk'");//设置为中文编码
 
//$stmt=$mysqli->stmt_init();//返回的就是一个预处理类对象
 
//准备一条语句
//$sql="insert into `test` ('name','age','dpc') values(?,?,?)";//准备一条语句
//$stmt->prepare($sql);
 
//其实 mysqli 本身就有prepare()方法,所以,以上的部分可以改为:
 
//准备一条语句
$sql="insert into `test`(`name`,`age`,`dpc`) values(?,?,?)";//准备一条语句
 
$stmt=$mysqli->prepare($sql);//直接返回了 stmt对象
 
//按占位符绑定参数
$stmt->bind_param("sis",$name,$age,$dpc);// “sis”指的是参数的数据类型 s:字符串,i:整型,d:双精度,b:大二进制
 
//重复插入数据
$name="陈华1";//填写参数
$age="25";//填写参数
$dpc="web开发笔记撰写者,网址是www.chhua.com";//填写参数
$stmt->execute();//执行
 
$name="陈华2";//填写参数
$age="25";//填写参数
$dpc="web开发笔记撰写者,网址是www.chhua.com";//填写参数
$stmt->execute();//执行
 
$name="陈华3";//填写参数
$age="25";//填写参数
$dpc="web开发笔记撰写者,网址是www.chhua.com";//填写参数
$stmt->execute();//执行
 
$name="陈华4";//填写参数
$age="25";//填写参数
$dpc="web开发笔记撰写者,网址是www.chhua.com";//填写参数
$stmt->execute();//执行
 
echo "最后插入的id:".$stmt->insert_id."<br>";
echo "最后一条语句影响了行数:".$stmt->affected_rows;
$stmt->

预处理代码

<?php
 
$mysqli=new mysqli("localhost","root","","test");
$mysqli->query("set names 'gbk'");//设置为中文编码
 
//准备一条语句
$sql="select * from `test` where `id`>?";//准备一条语句
 
$stmt=$mysqli->prepare($sql);//直接返回了 stmt对象
 
//按占位符绑定参数
$stmt->bind_param("i",$id);// “i”指的是参数的数据类型 s:字符串,i:整型,d:双精度,b:大二进制
$id=5;
$stmt->execute();//执行
$stmt->bind_result($id,$name,$age,$dpc);//绑定结果注意,必须和查询语句中所查询的段名称相对应
$stmt->fetch();//这个方法是一条一条的获取结果集信息
while ($stmt->fetch()){
 echo $name."----".$age."----".$dpc."<br>";
}
$stmt->close();//关闭预处理对象
?>

时间: 2024-07-30 17:35:32

php Mysqli预处理语句二款实例代码的相关文章

jquery读取json文件二款实例代码(1/2)

文章为你免费提供二款jquery读取网页特效on文件二款实例代码,这些代码非常实用哦 json文件: [ { "name":"xujun", "sex":"男", "home":"nanjing" }, { "name":"jack", "sex":"男", "home":"be

二款实例Jquery tab选项卡效果代码

<!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="content-

sql split函数二款实例

分割再成批插入 declare @s varchar(8000),@sql nvarchar(4000) set @s='1,12,1212,4545' set @sql='insert into t(col) select '+replace(@s,',',' col union all select ') exec(@sql) 测试 drop table #table declare @s varchar(8000),@sql nvarchar(4000) set @s='1,12,1212

PHP MySQL 预处理语句学习笔记

预处理语句及绑定参数   预处理语句用于执行多个相同的 SQL 语句,并且执行效率更高.   预处理语句的工作原理如下:   预处理:创建 SQL 语句模板并发送到数据库.预留的值使用参数 "?" 标记 .例如:INSERT INTO MyGuests (firstname, lastname, email) VALUES(?, ?, ?) 数据库解析,编译,对SQL语句模板执行查询优化,并存储结果不输出执行:最后,将应用绑定的值传递给参数("?" 标记),数据库执

二款php分页实例代码

<style type="text/css教程"> 二款php教程分页实例代码 a.pagecool,.pagecoolselect,.pagecoolpre,.pagecoolnext,.pageinfo,.curtotalx,.pagecoolprex,.pagecoolnextx{float:left;height:20px;font-family:arial,宋体;color:#444;font-weight:bold} a.pagecool,.pagecoolse

java 画一个曲线实例代码(二款jsp绘制曲线实例)(1/2)

java 画一个曲线实例代码(二款网页特效phttp://www.111cn.net/网页特效p.html target=_blank >jsp教程绘制曲线实例) /* 参数名 描 述  画出模式 必需的: 整数型.参数值可以为以下常量: 6912.#点,将画出的多边形显示为点: 6913.#线,将画出的多边形显示为线段:   曲线起点 必需的: 整数型.参数值应该介于 0 和"设置曲线等分点"命令中的"u向等分数"之间.  曲线终点 必需的: 整数型.参数值

二款异步调用天气实例代码

  <!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd"> <html xmlns="http://www.111cn.net/1999/xhtml"> <head> <meta http-equiv="con

五款java 删除数组元素与重复数组实例代码

五款java 删除数组元素与重复数组实例代码 本文章从网络上收藏了java 删除数组元素哦,各种删除数组元素都有自己的方法,这里不但可以删除数组元素而还可以删除重复的数组元素实例. package com.lzy; import java.util.hashset; import java.util.set; public class test {  /**   * @param args   */  public static void main(string[] args) {   // t

PDO预处理语句PDOStatement对象使用总结_php实例

PDO对预处理语句的支持需要使用PDOStatement类对象,但该类对象并不是通过NEW关键字实例化出来的,而是通过PDO对象中的prepare()方法,在数据库服务器中准备好一个预处理的SQL语句后直接返回的.如果通过之前执行PDO对象中的query()方法返回的PDOStatement类对象,只代表的是一个结果集对象.而如果通过执行PDO对象中的prepare()方法产生的PDOStatement类对象,则为一个查询对象,能定义和执行参数化的SQL命令.PDOStatement类中的全部成