防止laravel中的sql注入
假设使用原始查询,我在laravel中有以下内容防止laravel中的sql注入,laravel,sql-injection,Laravel,Sql Injection,假设使用原始查询,我在laravel中有以下内容 $a = DB::select( DB::raw("SELECT * FROM table WHERE col = '$var'") ); 在这种情况下,我如何保护我们的应用程序免受SQL注入攻击?Lightning\Database\Connection中的select方法可以绑定我们的参数: public function select($query, $bindings = array()) { .... .... }
$a = DB::select( DB::raw("SELECT * FROM table WHERE col = '$var'") );
在这种情况下,我如何保护我们的应用程序免受SQL注入攻击?Lightning\Database\Connection中的select方法可以绑定我们的参数:
public function select($query, $bindings = array())
{
....
....
}
因此,我们可以将绑定数组传递给select方法
所以
示例中的查询字符串非常错误-$var仍然作为原始字符串插入。此外,请添加指向文档/参考的链接。这就是你所需要的。
$a = DB::select( DB::raw("SELECT * FROM table WHERE col = :var") , array(
'var' => $var,
));