1
gouchaoer OP mysqli_real_escape_string 就不带两边的单引号,不过这里用的是 PDO
|
2
WuwuGin 2017-10-12 19:28:24 +08:00 via Android
pdo queto 就是添加单引号和处理转义特殊字符的,单引号里面的内容不会被 PHP 执行。你这样去掉等于没有使用此函数。
如果想避免注入,使用 prepare 函数,在需要执行用户输入的参数的时间,使用 bindParam 或者 bindValue。 |
3
2ME 2017-10-13 09:44:05 +08:00
prepare 预处理 bind 绑定设置参数 PDO::PARAM_INT
|
4
gouchaoer OP @WuwuGin 写错了,是这样的:$sql="SELECT * FROM t WHERE id='{$id}'";
|
5
gouchaoer OP 我知道 bind 好,但是历史代码是那样的,你 bind 要改很多逻辑,我没办法保证不出问题,还是对输入消毒改动小
|
6
gouchaoer OP |