предотвращение Sql инъекции для необработанного состояния в Laravel - PullRequest
0 голосов
/ 08 мая 2020

Я пытаюсь выяснить, как предотвратить инъекцию sql для условия ниже where. Он получает данные через поисковый ввод:


$searchValues = preg_split('/\s+/', $query, -1, PREG_SPLIT_NO_EMPTY);


  ->where(function ($q) use ($searchValues) {
                      foreach ($searchValues as $value) {
                        $q->orWhere(DB::raw("g.title"), 'LIKE', "%{$value}%");
                        $q->orWhere(DB::raw("s.step"), 'LIKE', "%{$value}%");
                      }
                    })

Я новичок в этом, поэтому любые руководства были бы полезны.

1 Ответ

0 голосов
/ 08 мая 2020

Ваш ответ здесь: https://laravel.com/docs/7.x/queries#introduction. Поскольку имя вашего столбца жестко запрограммировано и не зависит от ввода пользователя: оно безопасно от SQL Injection.

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