Помощник
|
Поиск для сайта. Доработать. |
Пират_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 пункт, например. |
|
|
|
Похожие темы
Тема | Ответов | Автор | Просмотров | Последний ответ | |
---|---|---|---|---|---|
Быстрая индексация страниц сайта и обратных ссылок - 2Index | 38 | 2Index | 6642 | 18.4.2024, 12:56 автор: 2Index |
|
✅ sms.chekons.com - ⭐ Сервис для получения SMS на реальные номера USA "Non-VoIP, безлим SMS, API" ⭐ Сервис для получения SMS на реальные номера USA |
13 | Chekon | 4078 | 18.4.2024, 11:48 автор: Chekon |
|
Rebex.io – Ваша инновационная платформа для обмена криптовалюты! | 1 | Rebex | 689 | 17.4.2024, 11:50 автор: Rebex |
|
Какой % отказов нормален для сайта? | 11 | Aloof | 2822 | 16.4.2024, 12:48 автор: diviner99 |
|
Betatransfer.net - прием платежей для HIGH RISK проектов, интернет эквайринг и мерчант онлайн оплат | 54 | arendator | 34838 | 15.4.2024, 15:16 автор: arendator |
Текстовая версия | Сейчас: 20.4.2024, 7:09 |