众所周知,我们不能在 Yii 等框架中使用原始 MySQL 查询。我想用mysql_escape_string
在我的项目中,该项目在 Yii 框架中运行,以避免用户输入中的 SQL 注入。
我知道mysql_escape_string
在 PHP 5.5 中已弃用,我有一个 PDO 替代方案。 Yii框架中的替代方案以及mysql_escape_string()的PDO方式是什么?
替代方案mysql_escape_string
在 PDO 中使用准备好的语句。以 Yii 为例:
$user = Yii::app()->db->createCommand()
->select('username, password')
->from('tbl_user')
->where('id=:id', array(':id'=>$_GET['userId']))
->queryRow();
(来自 Yii 参考文档http://www.yiiframework.com/doc/api/1.1/CDbCommand)
当您通过预准备语句中的占位符传递参数时,可以防止 SQL 注入。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)