Intereting Posts
Проблема при загрузке файлов размером более 10 МБ в IE6 Найти текст без какого-либо тега в элементе div Обновление данных в таблицу из динамически созданного поля ввода Производительность экземпляров mySQL RDS на Amazon Webservice Установить часовой пояс в PHP и MySQL Объединение нескольких ассоциативных массивов в один массив ассоциативных массивов Сообщение об ошибке № 100 при использовании Facebook open graph api Переменные среды не передаются из .htaccess в PHP exec () работает медленнее в PHP – такая же команда работает намного быстрее в интерактивном режиме Как запустить это регулярное выражение на PHP, которое анализирует полный адрес электронной почты с именем? При попытке отправить форму в текстовое поле введите прессу с jquery ajax не работает Неплохо ли иметь исходный код HTML в одной длинной строке как получить выход из процесса opend по popen в php? Слэш в почте HTML? Как увидеть расширения, загруженные PHP?

Laravel Eloquent ORM – комплекс, где запросы

У меня есть следующий запрос:

DB::select("SELECT * FROM mod_dns_records WHERE (scheduled = 'N' AND scheduleTime = 0 AND domainId = {$id}) OR (deleteRow = 'Y' AND domainId = {$id})"); 

Однако это небезопасно для SQL-инъекции. Может ли кто-нибудь помочь мне сделать это в безопасности или рассказать мне, как восстановить это с помощью ORM.

Благодаря!

Это будет запрос, как вы его

 $result = DB::table('mod_dns_records') ->where('scheduled', 'N') ->where('scheduleTime', 0) ->where('domainId', $id) ->orWhere('deleteRow', 'Y') ->where('domainId', $id) ->get(); 

Однако я заметил, что его можно немного оптимизировать, поскольку условие domainId существует в обеих группах:

 $result = DB::table('mod_dns_records') ->where('domainId', $id) ->where(function($q){ $q->where('scheduled', 'N'); $q->where('scheduleTime', 0); $q->orWhere('deleteRow', 'Y'); }) ->get();