laravel怎么预防sql注入


sql injection翻译过来就是sql注入,是指通过构造特定组合的字符串,欺骗应用程序,执行错误的业务逻辑。

明白了sql注入的概念,再来思考怎么预防?在laravel里,通常有以下三种方法来预防sql注入,分别是:

1.使用Validator验证页面提交的参数

$validator = Validator::make(['id' => $id], [
    'id' => 'required|numeric'
]);

if ($validator->fails()) {
    abort(404);
}else {
    //Run query
}

 

2.使用参数绑定

DB::statement("UPDATE users SET password=?  WHERE username =?", [$password, $username]);

 

3.关闭调试模式

编辑.env,设置APP_DEBUG=false

 

参考资料

https://www.stackhawk.com/blog/sql-injection-prevention-laravel/


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM