Помощник
|
Поиск для сайта. Доработать. |
Пират_hb
|
Сообщение
#1
|
||
|
|
||
|
|||
Евгений92 |
24.10.2016, 15:22;
Ответить: Евгений92
Сообщение
#2
|
|
Добрый день всем. Предлагаю услуги по веб-разработке сайтов , интернет-магазинов и т.д. По всем вопросам: e-mail: ellipsoit@mail.ru
|
|
|
Пират_hb
|
Сообщение
#3
|
|
Актуально!!!
|
|
|
Den1xxx |
28.10.2016, 0:16;
Ответить: Den1xxx
Сообщение
#4
|
|
Всем привет! Есть готовый поиск на сайте. Нужно допилить его. Например фраза хранящиеся в бд в поле 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 пункт, например. |
|
|
|
Похожие темы
Тема | Ответов | Автор | Просмотров | Последний ответ | |
---|---|---|---|---|---|
Люблю творить! Статьи для вас Копирайтинг- моя жизнь! |
312 | Zoya83 | 190631 | Сегодня, 7:51 автор: DimonX |
|
Современный сервис для быстрого и безопасного обмена валют. | 15 | CryptoTims | 4932 | Вчера, 22:32 автор: CryptoTims |
|
Rebex.io – Ваша инновационная платформа для обмена криптовалюты! | 2 | Rebex | 813 | Вчера, 20:04 автор: Rebex |
|
Быстрая индексация страниц сайта и обратных ссылок - 2Index | 39 | 2Index | 6697 | Вчера, 16:16 автор: 2Index |
|
Посоветуйте массажер для спины и шеи | 7 | Boymaster | 841 | Вчера, 2:05 автор: Boymaster |
Текстовая версия | Сейчас: 23.4.2024, 10:26 |