Php CDbCriteria中的addInCondition()方法是否为“SQL注入证明”?
我想对多个输入参数使用CDbCriteira附加条件。数字不是预定义的。此方法是否构成参数化查询? 我在这方面发现了一些有争议的想法: -由于它使用CDBC标准,我认为它是安全的。 我也看了一遍,但还是不清楚。这部分代码:Php CDbCriteria中的addInCondition()方法是否为“SQL注入证明”?,php,yii,sql-parametrized-query,yii-cactiverecord,Php,Yii,Sql Parametrized Query,Yii Cactiverecord,我想对多个输入参数使用CDbCriteira附加条件。数字不是预定义的。此方法是否构成参数化查询? 我在这方面发现了一些有争议的想法: -由于它使用CDBC标准,我认为它是安全的。 我也看了一遍,但还是不清楚。这部分代码: $condition=$column.'='.self::PARAM_PREFIX.self::$paramCount; $this->params[self::PARAM_PREFIX.self::$paramCount++]=$value; 似乎用于存储参数化值
$condition=$column.'='.self::PARAM_PREFIX.self::$paramCount;
$this->params[self::PARAM_PREFIX.self::$paramCount++]=$value;
似乎用于存储参数化值
然后在查询生成器中,它将使用它们作为计算参数
我在自己制作的脚本中就是这样做的,我真的怀疑钱或其他什么人会错过它,留下代码注入
还有,你测试过了吗?您可以添加随机SQL并查看它是否被转义。我没有进行测试,因为到目前为止我无法断开以绑定数量未知的字符串参数。