简体   繁体   English

保护laravel上的SQL注入

[英]protect SQL injection on laravel

I need to do auto completion on site, I use laravel. 我需要在现场进行自动完成,我使用laravel。 now it work like this: 现在它像这样工作:

Group:: whereRaw( where lower (name) like lower ('$q%'))->get ()

But it is not safe I try do like this: 但是尝试这样做是不安全的:

$q="a"; group:: whereRaw("lower (name) like lower ('?%')",[$q])->get ()

always return empty array, but 总是返回空数组,但是

$q="a"; group:: whereRaw("lower (name) like lower ('$q%')")->get () 

return correct result 返回正确的结果

如前所述,LIKE不区分大小写,因此您不需要lower或原始。

Group::where('name', 'LIKE', $q."%")->get();

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM