在其他任何事情之前,我知道Active Record会自动转义所有查询,并且有一种手动转义SQL的方法。
$this->db->escape()
问题是我有时使用原始SQL查询
$sql = "...."
$this->db->query($sql);
但我不想每次都手动调用CI转义函数。
有没有办法让CI自动转义传递给它的所有查询?可以设置的配置吗?
答案 0 :(得分:2)
请参阅此处http://codeigniter.com/user_guide/database/queries.html
您可以考虑使用位于网址底部的查询绑定。 尝试练习绑定查询,这是更快更干净的方法。
绑定查询示例:
$sql = "SELECT * FROM some_table WHERE id = ? AND price = ?";
$this->db->query($sql, array(3, 100));
注意**使用绑定方法,它总是自动转义。