sql预处理就是提前告诉sql语法处理器,提前声明且编译特定格式的sql语句,将所有用户的输入视为纯字符串参数,最后组成查询语句
php使用预处理的步骤
1,连接到数据库
2,设置预处理语句的结构
3,用户输入
4,执行sql语句
$stmt=$conn->prepare('SELECT 1 FROM user WHERE username=? AND password=?');
//设置预处理的语句结构,?表示要填入的用户输入
$input_username="root";
$input_password="12345678"
$stmt->bind_param("ss",$input_username,$input_password);
//绑定参数,以变量引用形式 不要直接填字符串
$stmt->execute();
//执行语句
$sql="INSERT INTO user(user_first,user_last,age)VALUES(?,?,?)";
$stmt=$conn->prepare($sql);
$stmt->bind_param("sss",$user_first,$user_last,$age);
- “sss” 参数列处理其余参数的数据类型。s 字符告诉数据库该参数为字符串。
- 参数有以下四种类型:
i - integer(整型)
d - double(双精度浮点型)
s - string(字符串)
b - BLOB(布尔值)