Strict Standards: Resource ID#18 used as offset, casting to integer (18) in /home/u1001/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#24 used as offset, casting to integer (24) in /home/u1001/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#26 used as offset, casting to integer (26) in /home/u1001/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#27 used as offset, casting to integer (27) in /home/u1001/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401
ТвойWeb :: Что делать с поиском форума?
ТвойWeb ТвойWeb
Качественный Европейский хостинг
Форум для чайников
 Чат на форуме      Помощь      Поиск      Пользователи


 Страниц (9): [1] 2 3 4 5 6 7 8 9 »   

> Описание: Обсуждение механизма поиска новой версии форума
TvoyWeb Администратор
Отправлено: 27 Января, 2007 - 14:08:10
Post Id



Главный здесь


Покинул форум
Сообщений всего: 7072
Дата рег-ции: Нояб. 2003  
Откуда: Tashkent Uz

Карма 52




Вот вроде добрался и до поиска.
Скачал последню версию скрипта RiSearch и убедился что основные функции которые используются на форуме не подверглись каким бы то нибыло серьезным изменениям.
То есть изменения есть. но они не существенные и многие из них я уже добавил ранее в новую версию FM.

Вообще на форуме используется механизм индексации и хранения базы индексных слов, а так же механизм поиска слов в базе по поисковым словам запроса.

Хотелось бы немного рассказать о структуре базы индексов (слов).
Сама база состоит из 5 файлов. Не буду вдаваться зачем каждый из этих файлов нужен и что и в каком виде там хранится.
Это не главное, главное в другом.
Сам по себе скрипт RiSearch предназначен для поиска на страницах сайтах. А это означает что он при индексации запоминает именно страницу (URL). На форуме немного по другому. При индексации поиска на форуме, все посты темы склеиваются вырезаются не нужные символы и из оставшегося создается база индексов темы.
Вообще в RiSearch не возможно найти точное совпадение фразы, только если случайно попадешь на это.
Например ищем по фразе "проблема регистрации на форуме" и ставим галочку AND напротив опции как искать. И что мы получаем? Улыбка скрипт выдаст страницы на которых присутсвуют все эти слова, а не строгое соответствие фразе. на форуме еще хуже, тема состоит из постов и если в первом посте было слово "проблема", в пятом - "форум", а в последнем "регистрация", скрипт нам и выдаст эту тему.
К тому же в скрипте есть опция "схема поиска".

Например схема №1 означает строгое соответствие поисковому слову (запросил "город", получишь именно "город" и ничто другое), но и индексные слова будут полностью писаться в базу индексов.

Схема №2 подразумевает что в базе будут храниться обрезанные слова до первых 4 символов (сейчас уже не помню до какой длинны, но пример такой - "городской" внесется в базу как "горо" ) и искаться будут тоже также (ввел "город" получил и "городок", "городской", "городовой" возможно даже "горожанин" - не проверял).

По схеме №3 в индекс пишутся все слова, но при поиске искомое слово уже ищется не только в начале слова но и посередине и в конце (искал "город" получил "пригород", "благородный", "огород"Подмигивание.

На мой взгляд при таком раскладе функция AND или OR практически не нужна.
Правда при AND количество результатов резко сокращается, но пользователь должен понимать что не получит точного результата.

Сразу хочется сказать тем кто мечтал о добавлении индексов при ответе или создания темы, что этого не получится никак. Это надо такой скрипт написать который разберет базу индексов раздела форума по полочкам добавит слова из нового сообщения и опять соберет эту базу. ИМХО я пока этого делать не собираюсь. Чтобы это сделать нужно полностью разобраться с механизмом индексации и извлечения слов из базы.
Я сегодня полдня посидел над скриптом и голова уже чугунная Улыбка.

Вот и хотелось бы услышать какие-то дельные предложения по поводу поиска.

Сейчас здесь на форуме в списке результатов ссылка на тему ведет на версию для печати. И я сам уже убедился что не все ссылки открывает, потому что в параметры передаются полные слова введенные в поисковом запросе, а не их урезанная версия (так как используется схема №2). В результате если слова урезать то в теме найдутся слова, а они приходят в том виде в котором их ввел пользователь и в теме эти слова не находятся. Клнечно можно передавать в версию для печати также урезанные слова по схеме №2, но тогда не будет желаемого результата.

Столько хотел сказать и объяснить по поводу поиска, но пока писал все забыл. Но в процессе обсуждения думаю все что хотел сказать вспомнится Улыбка.

Да и еще, можно конечно использовать и динамический поиск. Для небольших форумов он будет работать довольно быстро, а вот для больших таких как этот форум.... даже не знаю не пробовал. К тому же придется ограничить поиск только по разделам, дабы не нагружать сервер и не выслушивать слова негодования от хостера Улыбка.

Пожалуйста пишите по существу вопроса. Посты не посуществу будут жестоко удаляться!
 
 Top
Alone
Отправлено: 27 Января, 2007 - 18:11:13
Post Id



Super Member


Покинул форум
Сообщений всего: 2393
Дата рег-ции: Дек. 2004  

Карма 8




Ну а если сделать например ещё дополнительный выриант версии для печати (только все посты на одной странице) и давать скрипту поиска для индексации именно эту доп. версию для печати. Тогда скрипт будет видеть одну страницу и всё что на этой одной странице.
А вообще лучше конечно чтобы поиск был бы не по страницам а по постам (с якорями). И выдавался бы не список тем, а список постов.

Но по любому всё это не выход. Нет таких фишек как грамматический анализ слова и словосочетаний, со словарём...

Где-то видел на движке Друпала, там как-то было реализовано совмещение с поиском на Гугле (он даёт поиск по конкретному сайту). Так вот как-то так на PHP сделано, что не догадаешься что поиск от Гугла - всё лучшим образом внедрено в дизайн движка.
 
 Top
Alone
Отправлено: 27 Января, 2007 - 19:25:32
Post Id



Super Member


Покинул форум
Сообщений всего: 2393
Дата рег-ции: Дек. 2004  

Карма 8




Нашёл модуль gsearch (друпаловский). Если кто может и захочет переделать для ExBB то будет классно.

Пример работы и описание: http://drupal.org/node/59150
Скачать файл: gsearch.zip
Скачан раз: 1209

(Отредактировано автором: 27 Января, 2007 - 19:36:22)

 
 Top
TvoyWeb Администратор
Отправлено: 28 Января, 2007 - 08:40:03
Post Id



Главный здесь


Покинул форум
Сообщений всего: 7072
Дата рег-ции: Нояб. 2003  
Откуда: Tashkent Uz

Карма 52




Мда...... желающих видеть хороший поиск хоть отбавляй Улыбка, а предложений путевых ноль.
Alone
Я посмотрел скрипт. Ну во-первых он не пойдет потому как надо еще в гугле регаться и получить некий API ключ. Не думаю что юзерам это понравится Улыбка. Да и разбираться с API google тоже надо время..... к тому же там все на анг., а я не настолько его знаю.
 
 Top
Alone
Отправлено: 28 Января, 2007 - 10:56:40
Post Id



Super Member


Покинул форум
Сообщений всего: 2393
Дата рег-ции: Дек. 2004  

Карма 8




Ну да региться к сожалению надо.
Но как альтернативу можно юзать этот вариант даже без строгой подстрой под свой сайт как это выдумали друпаловцы (хотя у него и свой родной поиск не плохой).
Очень много плюсов:
1. Гугл всё делает сам.
2. Поиск с самым лучшим алгоритмом поиска.
3. База индексации естессно у Гугла находится.
4. Форму ввода поисковых запросов легко можно сделать под свой сайт.
Минус:
1. Нужно зарегиться.
 
 Top
SlyFox
Отправлено: 28 Января, 2007 - 12:00:55
Post Id



Dreamer


Покинул форум
Сообщений всего: 236
Дата рег-ции: Окт. 2005  

Карма 1




Цитата:

As of December 5, 2006, we are no longer issuing new API keys for the SOAP Search API. Developers with existing SOAP Search API keys will not be affected.

Так что с гуглом - не вариант определеннно...
 
 Top
TvoyWeb Администратор
Отправлено: 28 Января, 2007 - 13:18:59
Post Id



Главный здесь


Покинул форум
Сообщений всего: 7072
Дата рег-ции: Нояб. 2003  
Откуда: Tashkent Uz

Карма 52




Самый главный МИНУС
SlyFox пишет:
Так что с гуглом - не вариант определеннно...


Так ну а предложения по скрипту поиска на форуме? Что нет никаких предложений Улыбка

Я конечно могу сделать так как мне удобнее.... но потом начнется...

Как с ссылками Улыбка. Ссылки по идее должны вставляться так:
CODE:
[url=http://tvoyweb.ru]http://tvoyweb.ru/[/url]


Но иногда пользователю хочется подсветить ссылки цветом, а иногда и подчеркиванием.
CODE:
[url=http://tvoyweb.ru][color=green]http://tvoyweb.ru/[/color][/url]

или так: Улыбка
CODE:
[url=http://tvoyweb.ru][color=green][size=18]http://tvoyweb.ru/[/size][/color][/url]

А потом спрашивает почему ссылки не отображаются как ссылки Улыбка
Как говорится на вкус и цвет... Улыбка

Так и с поиском...... надо как то уже определиться.... поэтому и расписал так в первом своем сообщении.
 
 Top
Alone
Отправлено: 28 Января, 2007 - 14:02:26
Post Id



Super Member


Покинул форум
Сообщений всего: 2393
Дата рег-ции: Дек. 2004  

Карма 8




Я бы в гугле искал по форуму ТвоегоВеба.
Всегда бы находилось то что нужно...
Если надумаете то вот:
https://www.google.com/adsense
 
 Top
Валерий Администратор
Отправлено: 28 Января, 2007 - 22:05:14
Post Id



Админ-3


Покинул форум
Сообщений всего: 2676
Дата рег-ции: Янв. 2005  
Откуда: Беларусь

Карма 16




TvoyWeb
Каким бы не был поиск, он не должен заботить автора проекта.
То есть, не должно быть никакой ручной индексации.
есть поиск - и все.
Второе - хорошо бы, чтобы поиск не создавал кучу для себя. ПВедь при большом объеме тем и ответов, скрипт создаст базу, которая будет мало чем отличаться от самого форума.
По этой причине я свой форум не индексирую.

итак
1. без ручной индесации
2. Без создания базы
 
 Top
Ray Wen Администратор
Отправлено: 28 Января, 2007 - 22:22:22
Post Id



Собиратель шишек...


Покинул форум
Сообщений всего: 2602
Дата рег-ции: Янв. 2005  
Откуда: Волгоград

Карма 21




Ну на самом деле выход может быть только один:
Сделать индексацию форума автоматической, в админке задать, скажем раз в неделю или раз в день... но тогда один из пользователей будет попадать на очень долгую загрузку страницы форума... причем желательно чтобы выводилась инфа о том что ему нельзя закрывать страницу и нужно подождать... Но это тоже не очень хорошо, особенно для больших форумов, но другого ничего на файлах не придумать...
 
 Top
Страниц (9): [1] 2 3 4 5 6 7 8 9 »
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0, скрытых: 0)
« ExBB Full Mods »


Все гости форума могут просматривать этот раздел.
Только администраторы и модераторы могут создавать новые темы в этом разделе.
Только администраторы и модераторы могут отвечать на сообщения в этом разделе.
 



Форум на AlfaSpace.NET


Powered by ExBB
ExBB FM 1.0 RC1 by TvoyWeb.ru
InvisionExBB Style converted by Markus®

[Script Execution time: 0.014]     [ Gzipped ]



Notice: ob_end_flush(): failed to send buffer of ob_gzhandler (1) in /home/u1001/domains/tvoyweb.ru/public_html/forums/include/page_tail.php on line 33