<?php
1)准备一个用于执行的SQL语句
mysqli_stmt mysqli_prepare ( mysqli $link , string $query );
2)将变量作为参数绑定到prepared语句上
bool mysqli_stmt_bind_param ( mysqli_stmt $stmt , string $types , mixed &$var1 [, mixed &$... ] );
参数string $types说明:表示后面多个可选参数变量的数据类型,一一对应.
i:int类型
d:double或者float类型
s:字符串类型
b:二进制数据类型(BLOB、二进制字符串)
3)执行一个prepared准本好的语句
bool mysqli_stmt_execute ( mysqli_stmt $stmt );
上述三步骤举例
$query='insert into t1(id,info,content,filed1) values(?,?,?,?)';
$stmt=mysqli_prepare($link, $query);
mysqli_stmt_bind_param($stmt,'issd',$val1,$val2,$val3,$val4);
$val1=1;
$val2='第五代青蛙';
$val3='的武器大全我带我去';
$val4=60.5;
var_dump(mysqli_stmt_execute($stmt));
如果是select之类的语句需要具体的结果;
4)将查询出的数据绑定到PHP变量上
bool mysqli_stmt_bind_result ( mysqli_stmt $stmt , mixed &$var1 [, mixed &$... ] );
5)从一个prepared语句中抓取结果到指定变量中
bool mysqli_stmt_fetch ( mysqli_stmt $stmt );
6)从一个prepared语句返回结果集元数据,配合相关函数,可以用来获得字段的相关信息
mysqli_result mysqli_stmt_result_metadata ( mysqli_stmt $stmt );
①mysqli_fetch_field();
②mysqli_fetch_fields();
7)取回一个结果集
bool mysqli_stmt_store_result ( mysqli_stmt $stmt );
取回之后可以使用int mysqli_stmt_num_rows ( mysqli_stmt $stmt );返回语句结果集中的行数
8)释放给定语句处理存储的结果集所占内存
void mysqli_stmt_free_result ( mysqli_stmt $stmt );
9)关闭一个prepared语句
bool mysqli_stmt_close ( mysqli_stmt $stmt );
?>