Защищает ли CodeIgniter Query Builder от внедрения SQL-кода даже в более сложные запросы? - PullRequest
0 голосов
/ 26 ноября 2018

Я знаю, что использование 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 в условии JOIN?

(В случае, если это имеет значение, я использую CodeIgniter 3.1.9)

1 Ответ

0 голосов
/ 27 ноября 2018

Да, $teacher_id будет экранировано.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...