为了账号安全,请及时绑定邮箱和手机立即绑定

$mysqli_stmt->bind_param('ss',$username,$password);之后改变了什么

$mysqli_stmt->bind_param('ss',$username,$password);

之后是改变了什么东西?  还是需要再$mysqli_stmt->execute();才有改变什么

这时候输出$sql还是跟原来一样, echo $mysqli_stmt显示错误

请就用$username='or 1=1#' 为例,告诉我 上面操作之后改变了什么

正在回答

2 回答

相当于将?当做一个x来执行了语句,后面的绑定参数操作,然后执行操作之后,不再是用原来的句子查询一遍,而是将编译好的语句,带入特定参数,执行时将‘or 1=1 #当做一个字符串实参代入,而不是拼接成完整sql语句再去执行。。。。。。 

2 回复 有任何疑惑可以回复我~
#1

坚持MyDream 提问者

非常感谢!
2017-06-19 回复 有任何疑惑可以回复我~

如果有一账户的用户名和密码分别为      __dog     密码:    123;

是不是因为bind_param('ss',$username,$password);         账户名含有 "__" 因而不进行查询

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

$mysqli_stmt->bind_param('ss',$username,$password);之后改变了什么

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信