Page 1 of 3

Фильтр поиска

Posted: Mon Mar 16, 2020 8:00 am
by ulan
Как проще всего сделать чтобы спец символы фильтровались в поиске

?q=valentine\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\

при вводе такого чтобы искал
?q=valentine

Re: Фильтр поиска

Posted: Mon Mar 16, 2020 8:07 am
by admin
как я понимаю есть поисковая строка на сайте

есть 2 варианта

1. убирать их при сабмите в JS

тогда даже если юзер введет valentine\\\\\\\\\\\\\\\\\\\\\\\\\\ то все равно браузер откроет урл ?q=valentine а не ?q=valentine\\\\\\\\\\

и будет красиво

2. убирать их в common.php - тогда урлы будут некрасивые, но искать по кривым символам не будет

для common.php готовый пример

if (isset($_GET['search'])) {
$_GET['search'] = str_replace(array(
'\\',
'#',
'%',
), '', $_GET['search']);
}

Re: Фильтр поиска

Posted: Mon Mar 16, 2020 8:10 am
by ulan
я сабмичу через гет в сфинкс
<form method='get'
на урл по сути без разницы проблема в том что у меня на сайте выводятся топ серчи но кто то загоняет в топ такие слешовые символы и диз едет

Re: Фильтр поиска

Posted: Mon Mar 16, 2020 8:15 am
by admin
"я сабмичу через гет в сфинкс"

ну это примерно как "я еду покупаю в унитаз", по суди - наверно верно, но пропущен ряд стадий в промежутке ...

пример с коммон будет отсекать эти символы на одной из пропущеннх стадий

Re: Фильтр поиска

Posted: Mon Mar 16, 2020 8:17 am
by ulan
в сфинксе нельзя отсечь такие символы? не встречали такую информацию?

Re: Фильтр поиска

Posted: Mon Mar 16, 2020 8:21 am
by admin
нет, никогда не приходило в голову такое искать

Re: Фильтр поиска

Posted: Mon Mar 16, 2020 8:38 am
by ulan
<?=str_replace("-"," ","<!--ESCAPED_SEARCH_QUERY-->");?>
а если по такой аналогии добавить в страницу поиска вывод
он будет искать как надо ? или запрос для поиска он получает раньше?

Re: Фильтр поиска

Posted: Mon Mar 16, 2020 8:40 am
by ulan
Я к чему, мне нужно как можно проще сделать ибо править коммоны руками на куче сайтов проблемно

Re: Фильтр поиска

Posted: Mon Mar 16, 2020 8:45 am
by admin
вам думаю надо записать как происходит вообще все в интернет

браузер -> сервер -> nginx -> апач -> пхп -> запуск common.php -> запуск скрипта -> обработка запроса -> обращение к базе -> получение результата из базы -> обработка темпелйта с результатами -> отправка результата в апач -> отправка из апач в nginx -> отправка серваком в браузер -> отображение браузером html


по этой схеме вы можете видеть где коммон, где база и где ваше изменение темпелйта

админ может массово отрездактировать файл на серваке

Re: Фильтр поиска

Posted: Mon Mar 16, 2020 8:50 am
by ulan
admin wrote: Mon Mar 16, 2020 8:45 am вам думаю надо записать как происходит вообще все в интернет
Ты если курсы откроешь я запишусь