Fra*_*isc 6 php mysqli sqlbindparameter
正如标题所说,使用bind_param()时是否必须转义用户输入?还是内部完成?
谢谢.
Phi*_*hil 10
不,在绑定参数时,您不需要转义数据以防止SQL注入.
这并不能免除您验证所述数据的麻烦.
绑定参数时,不会执行转义(内部或其他方式).使用参数占位符准备SQL语句,并在执行时传递这些值的值.
数据库知道什么参数并相应地处理它们而不是SQL值插值.
没有.
引用这个
http://mysql.lamphost.net/tech-resources/articles/4.1/prepared-statements.html
"通常在处理即席查询时,在处理从用户收到的数据时需要非常小心.这需要使用能够逃避所有必要的故障字符的函数,例如单引号,双引号和反斜杠字符.在处理预准备语句时这是不必要的. 数据的分离允许MySQL自动考虑这些字符,并且不需要使用任何特殊功能进行转义."