您的位置:首页 > 数据库

web安全 之 sql注入防御

2015-03-06 11:57 441 查看
1、mysql预编译(推荐)

$mysqli=new MySQLi("localhost","root","","mraz");
if($mysqli->connect_error){
die($mysqli->connect_error);
}
//创建预编译对象
$sql="select id,fdName,fdAge from emp where id=? and fdAge=?";
$mysqli_stmt=$mysqli->prepare($sql);

$id=1;
$fdAge=1;
//绑定参数,严格按照顺序
//ii是两个整型类型,si是一个字符串类型,一个整型类型
$mysqli_stmt->bind_param("ii",$id,$fdAge);
//绑定结果集
$mysqli_stmt->bind_result($id,$fdName,$fdAge);
//执行
$mysqli_stmt->execute();
//取出绑定的值
while($mysqli_stmt->fetch()){
echo "<br/>$id--$fdName--$fdAge";
}


2、过滤输入

addslashes函数,将单引号('),双引号("),反斜杠(\)等预定义字符加上反斜杠(\)转义

例如

$id=addslashes($_GET[‘id’]);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: