加入收藏 | 设为首页 | 会员中心 | 我要投稿 威海站长网 (https://www.0631zz.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP变量 使用DB :: Raw

发布时间:2022-12-06 15:31:25 所属栏目:PHP教程 来源:转载
导读: 我在Laravel中真的很新,我不确定如何通过使用SQL Injections的{??{1}}查询来保护我。我已经阅读了低谷并且我已经阅读过那种不安全的信息,应该加以保护,因为它在查询中作为字符串注入...

我在Laravel中真的很新,我不确定如何通过使用SQL Injections的{??{1}}查询来保护我。我已经阅读了低谷并且我已经阅读过那种不安全的信息,应该加以保护,因为它在查询中作为字符串注入...

这些表达式将作为字符串注入到查询中,因此请注意不要创建任何SQL注入点

Myquery看起来像这样

DB::Raw

查询只在页面上显示包含产品的类别。

1 个答案:

答案 0 :(得分:1)

如果有通过 $ _ GET ['foo'] 或 $ _ POST ['bar'] 发送的数据,则通常会发生sql注入风险网络用户。您应该通过将数据绑定到原始查询来保护数据库免受SQL注入PHP变量,如下所示:

$risky_input=$_GET['some_risky_input'];//assuming this comes from an input field
$result=
DB::select(
    DB::raw("SELECT * FROM category WHERE category_name=:queriedterm ")
    ,['queriedterm'=>$risky_input]//binds data throuhg array
    )
;

请注意冒号“:”及其旁边的变量。这样可以保护您的查询免受sql注入。

注意:您的查询没有任何错误注入风险,因为它不包含Web用户填写的任何文本输入字段中的参数。

(编辑:威海站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!