Запретить или пропустить рендеринг символов и объектов Laravel / PHP - PullRequest
0 голосов
/ 18 февраля 2019

У меня есть эта функция в моем контроллере:

if ($request->get('query')) {
    $query = $request->get('query');

    $data = DB::table('users')
        ->where('is_archive', '=', 0)
        ->where(function($string) use ($query) {
            $string->where('first_name', 'LIKE', '%' . $query . '%')
            ->orWhere('last_name', 'LIKE', '%' . $query . '%')
            ->orWhere('church_id', 'LIKE', '%' . $query . '%');
        })
        ->get();
}

То, что он делает, это результат поиска в реальном времени, который отображает те же точные результаты, что и при вводе буквы.То же, что строка поиска в Google, что каждый раз, когда вы печатаете букву.он покажет результаты, которые совпадают с текущим набранным текстом.Я хотел бы добавить функции безопасности, которые будут препятствовать рендерингу <, >, ', " и т. Д., Но он будет принимать пробел (пробел).То, что я сделал до сих пор:

$sanitizedQuery = strtolower(trim(preg_replace('/\s+/', '', $query)));

, но, похоже, я не смог достичь желаемого результата.Любое предложение высоко ценится.

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