+ Ответить в теме
Показано с 1 по 4 из 4

Тема: Поиск для сайта. Доработать.

  1. #1
    Местный Пират на пути к лучшему Аватар для Пират
    Регистрация
    13.12.2008
    Адрес
    Москва
    Сообщений
    117
    Thanks
    4
    Thanked 4 Times in 4 Posts

    Смех Поиск для сайта. Доработать.

    Всем привет!

    Есть готовый поиск на сайте. Нужно допилить его.

    Например фраза хранящиеся в бд в поле name: Колодки дискового тормоза задние ATV-300 (4.3.01.3370) CN. Мой поиск ищет строго как написано наименование. Если написать "ки дискового тор", то результат выдаст. Но необходимо переделать поиск чтоб можно было ввести начало нескольких слов и неважно в каком порядке они стоят, такого типа: колод 300 atv или 300 кол atv и поиск выдал бы нужный запрос. Возможно ещё будут допилы, но это после обсуждения работы.

    аська 407996396
    скайп offtop3

    За вознаграждение.

  2. #2
    Новичок Евгений92 на пути к лучшему Аватар для Евгений92
    Регистрация
    24.10.2016
    Сообщений
    4
    Thanks
    0
    Thanked 0 Times in 0 Posts
    Добрый день всем. Предлагаю услуги по веб-разработке сайтов , интернет-магазинов и т.д. По всем вопросам: e-mail: ellipsoit@mail.ru

  3. #3
    Местный Пират на пути к лучшему Аватар для Пират
    Регистрация
    13.12.2008
    Адрес
    Москва
    Сообщений
    117
    Thanks
    4
    Thanked 4 Times in 4 Posts
    Актуально!!!

  4. #4
    Модератор Den1xxx - просто великолепная личность Den1xxx - просто великолепная личность Den1xxx - просто великолепная личность Den1xxx - просто великолепная личность Den1xxx - просто великолепная личность Den1xxx - просто великолепная личность Den1xxx - просто великолепная личность Den1xxx - просто великолепная личность Аватар для Den1xxx
    Регистрация
    24.05.2011
    Адрес
    Гомель
    Сообщений
    2,485
    Thanks
    124
    Thanked 213 Times in 205 Posts
    Записей в дневнике
    9
    Цитата Сообщение от Пират Посмотреть сообщение
    Всем привет!

    Есть готовый поиск на сайте. Нужно допилить его.

    Например фраза хранящиеся в бд в поле name: Колодки дискового тормоза задние ATV-300 (4.3.01.3370) CN. Мой поиск ищет строго как написано наименование. Если написать "ки дискового тор", то результат выдаст. Но необходимо переделать поиск чтоб можно было ввести начало нескольких слов и неважно в каком порядке они стоят, такого типа: колод 300 atv или 300 кол atv и поиск выдал бы нужный запрос. Возможно ещё будут допилы, но это после обсуждения работы.

    аська 407996396
    скайп offtop3

    За вознаграждение.
    Ваша проблема проистекает в недоработке поиска в MySQL в полях индекса типа Fulltext
    Другими словами, правильный поиск должен искать в словах по корням слов, игнорируя суффиксы, приставки и окончания.
    В описании функционала так и задекларировано. Но работает это только в английском варианте.
    На русский и все остальные языки разработчики бесплатного MySQL забили и на это никак не повлиять, разве что написать самому.

    Решений может быть несколько:
    1. Перевести на PostgreSQL — там этот поиск есть
    2. Отказаться от Fulltext.
    Обрабатывать текст до запроса в базу, отрезая всё лишнее с учётом русской морфологии.
    Объединять получившееся, делать запрос, используя LIKE
    3. Хранить в БД отдельное поле для поиска.
    В нем будет текст, обработанный для правильного поиска текущим недоработанным Fulltext'ом
    Всю концепцию в 2 словах объяснить сложно, см. https://valera.ws/2007.09.05~morpho_search_in_mysql/
    4. Использовать спец. инструмент, например Sphinx — http://sphinxsearch.com/

    Как видите, вариантов много. У каждого свои достоинства и недостатки.
    Лично я реализовывал вариант 2, потому что он не требует глобальных изменений в БД и работает на любом хостинге.
    Минус — при реализации на простейшем стеммере Портера дает неточность в 15-20%.
    Всё зависит от задачи. Высоконагруженным сайтам подошёл бы 1 или 4 пункт, например.
    Последний раз редактировалось Den1xxx; 27.10.2016 в 23:52.

+ Ответить в теме

Похожие темы

  1. Сделать поиск со стороннего сайта
    от Kozlik в разделе Помогите!
    Ответов: 0
    Последнее сообщение: 17.09.2014, 13:31
  2. Поиск для сайта
    от Stautt в разделе Скрипты / Движки / CMS / Форумы
    Ответов: 0
    Последнее сообщение: 23.01.2013, 13:37
  3. Как доработать парсинг?
    от sergey-g в разделе PHP
    Ответов: 0
    Последнее сообщение: 25.01.2010, 15:08
  4. Поиск сайта в google
    от NOZY в разделе Поисковые системы
    Ответов: 2
    Последнее сообщение: 15.03.2009, 10:21
  5. Поиск с сайта через google.ru, ya.ru
    от Azot в разделе Поисковые системы
    Ответов: 1
    Последнее сообщение: 08.10.2008, 22:30

Социальные закладки

Социальные закладки

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения

 

Html-форум RATING ALL.BY Рейтинг@Mail.ru