Не нравятся результаты поиска? Попробуйте другой поиск!
dle-faq.ru FAQ (все вопросы) Общие вопросы по PHP Не точный поиск по доп полям

Не точный поиск по доп полям


     16.10.2014    Общие вопросы по PHP    1227

вопрос
Проблема в том что, если выбираю поиск HDRip, при поиске показывается еще и HDRip 720p и тому подобное, а нужно что бы было чисто как значение что в него посылается. Пробовал через preg_match не получилось.

Сам код поиска:

if ($value != "" and $value != NULL and is_array($value)) {
        $xfieldsarray     = $value;
        $xfieldsarrayname = $key;
        foreach ($xfieldsarray as $key => $value) {
            $value = $db->safesql($value);
            $xfieldsarrayname = $db->safesql($xfieldsarrayname);
            if (!empty($value) AND !empty($xfieldsarrayname)) {
                $xffwherearr[$xfieldsarrayname][] = "SUBSTRING_INDEX( SUBSTRING_INDEX( xfields,  '{$xfieldsarrayname}|', -1 ) ,  '||', 1 ) LIKE '%{$value}%'";
            }
        }
        $xffarraywhere[] =  "(" . implode(' OR ', $xffwherearr[$xfieldsarrayname]).")";
    }

Ответил: Sander


Чтобы был поиск точного совпадения, заменить:
'%{$value}%'

на
'{$value}'

Комментарии пользователей (3)

Gameer
225

1121 | 395

Gameer - 16 октября 2014 21:02 - Эксперт

и почему я не подумал... Пол дня думал и возился с preg_match

Истина в противоречии.​

morefilms
57 | 3

morefilms - 17 октября 2014 11:10 - Юзер

А в каком это файле такой код? или в какой и куда его нужно вставить?)

Gameer
225

1121 | 395

Gameer - 18 октября 2014 11:52 - Эксперт

morefilms, нигде это мой фильтр поиска который в отдельном файле.

Истина в противоречии.​

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы