Страницы

Поиск по вопросам

среда, 17 октября 2018 г.

Laravel Чем грозит использование прямых запросов к БД?

Чем грозит использование прямых запросов к БД через DB::select() ? Мне проще написать запрос на SQL или написать сложную процедуру в БД, чем использовать правила Eloquent ORM.


Ответ

Если использовать привязку параметров в запросах, то инъекция не пройдёт:
DB::select('SELECT * FROM users WHERE id = ?', array($userId));
Опасность представляет непосредственная вставка пользовательских данных:
DB::query('SELECT * FROM users WHERE id = ' . $userId); // НИКОГДА так не делайте!
Я солидарен с вами в отказе от ORM, и всегда использую parameter binding.

Комментариев нет:

Отправить комментарий