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

Поиск по определенному полю


     20.09.2014    Общие вопросы по PHP, MySQL    1155

вопрос
Добрый день всем пользователям данного ресурса!
Вопрос такой. На сайте с фильмами для разных тематических подборок используется шаблон поиска названия фильма, чтоб не заморачиваться и не искать каждый фильм.
Использую ссылку вида: /?do=search&subaction=search&story=название фильма

Но результаты очень не точные. Хотелось бы как-то усложнить и искать только в поле title в таблице dle_post
Как это можно организовать?

Ответил: vitnet


https://site.ru/index.php?do=search&subaction=search&story=windows&titleonly=3

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

vitnet
218

2174 | 930

vitnet - 20 сентября 2014 17:35 - Эксперт

engine/modules/search.php
            // Поиск по ключевым словам
            if( $config['full_search'] ) {
                    $titleonly_where = array ('0' => "title LIKE '%{story}%'", // Искать только в заголовках статей
                                              //'0' => "MATCH(title,short_story,full_story,xfields) AGAINST ('{story}')", // Искать только в статьях
                                              '1' => "MATCH(text) AGAINST ('{story}')", // Искать только в комментариях
                                              '2' => "MATCH(" . PREFIX . "_static.template) AGAINST ('{story}')", // Искать только в статических страницах
                                              '3' => "title LIKE '%{story}%'" ); // Искать только в заголовках статей

            } else {
                    $titleonly_where = array ('0' => "title LIKE '%{story}%'", // Искать только в заголовках статей //
                                              //'0' => "short_story LIKE '%{story}%' OR full_story LIKE '%{story}%' OR xfields LIKE '%{story}%' OR title LIKE '%{story}%'", // Искать только в статьях
                                              '1' => "text LIKE '%{story}%'", // Искать только в комментариях
                                              '2' => PREFIX . "_static.template LIKE '%{story}%'", // Искать только в статических страницах
                                              '3' => "title LIKE '%{story}%'" ); // Искать только в заголовках статей
            }

yastreb1
9

yastreb1 - 20 сентября 2014 18:41 - Юзер

Зачем мне показывать кусок кода из файла? Я и сам его найти могу.
Запрос к файлу search можно составить чтобы искать только в заголовке?
При этом не удаляя стандартные опции поиска в /?do=search

vitnet
218

2174 | 930

vitnet - 20 сентября 2014 19:01 - Эксперт

***Комментарий удален***

yastreb1
9

yastreb1 - 20 сентября 2014 19:08 - Юзер

Вот спасибо! Теперь все понятнее стало :)

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

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