即使在更复杂的查询中,CodeIgniter查询生成器也可以防止SQL注入吗?

时间:2018-11-26 19:00:53

标签: codeigniter-3 sql-injection

我知道使用CodeIgniter的Query Builder应该可以防止SQL注入。手册说,它“允许更安全的查询,因为系统会自动转义这些值。”但是我不确定“值”是指通过查询生成器的任何内容,还是仅以简单的结构传递的值,例如:$this->db->where('name', $name);

例如,如果我使用:

$this->db->select('student_id, concat(fname, " ",lname) as student_name');
$this->db->from('student');
$this->db->join('class_has_teacher',"student.class_id=class_has_teacher.class_id AND teacher_id=$teacher_id");
$query = $this->db->get();

处于联接状态的$teacher_id是否也会被转义?

(如果很重要,我使用的是CodeIgniter 3.1.9)

1 个答案:

答案 0 :(得分:0)

是的,$teacher_id将被转义。