Перейти к содержанию
СофтФорум - всё о компьютерах и не только

Скрипт поисковика по сайту


Рекомендуемые сообщения

Точнее

Поиск можеть быт на сервере ( PHP, Perl) или у клиенте ( JavaScript )

Если на сервере может быт в БД ( MySQL например ) или в файлов сайта

Все зависить как сделан сам сайт и что тебе нужно

Ссылка на комментарий
Поделиться на другие сайты

Кстати хорошая (хоть и заезженная) тема. У меня возникло несколько смежных вопросов по этому поводу.

А как вообще лучше организовать поиск по сайту? С помощью скрипта или может установить форму поиска какого-нибудь поисковика (Яндекса, Гугла)? Если делать с помощью скрипта, то какие самые лучшие? Кто, какими уже пользовался?

Я видел разные скрипты поиска, на javascript, PHP и т.д. даже на AJAX встречал. На javascript поиск получится туповатый (в тот скрипт, который я видел нужно было заранее заносить результаты, т.е. по алгоритму - если ищется "слово","слово 2", "слово 3"... то показывать страницы "страница","страница 5","страница 115"...) в принципе удобно для оч маленьких сайтов, которые редко изменяются (но на маленьких сайтах поиск на мой взгляд вообще не нужен). На AJAX поиск был сильно сырой, хотя и оригинальный. Мне больше всего на PHP понравились, но я в пхп не шарю и не знаю какие есть хорошие...

Ссылка на комментарий
Поделиться на другие сайты

Кстати хорошая (хоть и заезженная) тема. У меня возникло несколько смежных вопросов по этому поводу.

А как вообще лучше организовать поиск по сайту? С помощью скрипта или может установить форму поиска какого-нибудь поисковика (Яндекса, Гугла)? Если делать с помощью скрипта, то какие самые лучшие? Кто, какими уже пользовался?

Лучший скрипт это тот который для конкретнего сайта делали... а все готовие скрипти - компромисние решения.

Ну если Google / Yandex хорошо индексируют твой сайт можно пользувать их. Но лучше когда есть твой собствений сайт потому что Google не знают как сделан твой сайт, а ты знаеш :)

Ссылка на комментарий
Поделиться на другие сайты

Ну раз пошла такакя пьянка, то выложу парочку скриптов, так как некоторое время назад замучался искать и пробовать!

Ниже - кучка скрипот, некоторые RieSearch Pro - просили денег, некотороые (не помню какой) не хотел читать латиницу, неокорые не хватило ума настроить...

Я остановился пока на Risearch 09901 - он меня устраивает.

Выложил некоторое количество -качайте, пробуйте. А так, можно их забабашить в один архив все.

Простой скрип, никакой индексации не делает, ищет сразу (напролом). Если у вас на сервере 10 файлов - нет проблем, а если 1000, то результата вы не дождетесь. Хотя если вы только учитесь писать скрипты, то этот скрипт подойдет вам как помощник, кроме этого вы можете использовать подобные, простые, скрипты для поиска по отдельной директории, чтобы не устанавливать огромные скрипты, на настройку которых может уйти не один час.

140_140.zip

RiSearch - простой, но достаточно мощный скрипт, предназначенный для организации поиска на вебсервере. RiSearch ни в коей мере не предназначен для замены таких крупных поисковых систем, как ht://Dig или Glimpse, и уж тем более не может соревноваться с коммерческими программами стоимостью в несколько тысяч USD. Предназначен он скорее для малых и средних сайтов, имеющих порядка 1000 файлов суммарным объемом около 10-20Мб. Этого вполне должно хватить для большинства любительских сайтов. Впрочем ему под силу справиться и с гораздо большим числом файлов

2070.zip Хороший скрипт!

Есть несколько его версий. я пользуюсь этой.

Fetch! Категория: Поиск Автор программы/скрипта: ARCS Описание Данная программа представляет собой мощную систему поиска по сайту, которая поможет вашим посетителям за считанные секунды найти на вашем сайте то, что они ищут. Основные характеристики программы. возможен поиск как отдельных слов, так и целых фраз использование логических операторов настройка внешнего вида результатов поиска возможность выбора количества результатов, отображаемых на каждой странице программа предельно проста в установке и использовании Размер:

2077.zip

Поиск по сайту Категория: Поиск Автор программы/скрипта: PVD Lab. Описание Простой поиск по сайту с выводом содержимого title. настройки где можно искать и в каких именно файлах форматированный вывод результатов подключение - SSI Размер: 2639 байт

2079.zip

Jason search Категория: Поиск Автор программы/скрипта: Jason Anthony Описание Данная программа представляет собой систему поиска по вашему сайту. Программа предельно проста в установке, настройке и использовании. Внешний вид страницы с результатами поиска полностью настраивается. Вы можете менять параметры шрифта, параметры фона, формат отображения результатов поиска и т.д. Программа достаточно быстра, даже при работе с очень большими сайтами. Кроме обычного поиска (с использованием одного ключевого слова), посетители вашего сайта смогут проводить сложный поиск по нескольким ключевым словам (с использованием логических операторов). Размер: 3553 байт

2081.zip

Search Engine 02 Категория: Поиск Автор программы/скрипта: Hot Area Описание Search Engine - это достаточно производительная система поиска по сайту. В результате поиска вам выдается список файлов в которых содержится искомое слово или фраза. Возможен точный поиск с использованием операторов «AND» или «OR», а также, вы имеете возможность задать тип искомого файла и в каких директориях искать. Программа имеет возможность настройки результатов поиска, то есть, вы можете выбрать сколько найденных файлов отображать в результатах. В отличии от версии 01, имеет возможность поиска по алфавиту. Размер: 9312 байт

2085.zip

Anaconda Foundation Freesearch Категория: Поиск Автор программы/скрипта: Anaconda Описание Прекрасный скрипт реализующий метапоисковую систему на Вашем сайте. Позволяет производить очень качественный поиск, за основу поискового механизма взяты самые лучшие сайты во всемирной сети. имеется возможность с одной страницы задавать темы для поиска различным поисковым системам и, что особенно важно, просматривать полученные результаты на одной странице. Скрипт представляет собой поле, куда пользователю предлагается ввести тему поиска, справа находятся три ссылки (Free Software (бесплатное программное обеспечение), MP3 Download (звуковые файлы в формате mp3), Internet Business), выбрав которые Вы сможете сузить поиск. Размер: 38085 байт скачать скрипт Anaconda Foundation Freesearch

2087.zip

RiSearch не использует какие-либо библиотеки или базы данных, кроме самого Перла. Следовательно, его можно использовать на любом сервере, где у Вас есть доступ к CGI (включая некоторые бесплатные хостинги). В отличие от крупных систем, таких как ht://Dig или Glimpse, исходный текст скрипта занимает 10 килобайт. Любой вебмастер, знакомый с перлом, способен за пару часов разобраться в работе скрипта и модифицировать его под свои нужды. Скрипт способен работать с разными языками. Простой и удобный язык запросов. RiSearch использует платформонезависимые бинарные файлы, которые могут быть использованы на разных компьютерах. То есть, Вы можете проводить индексацию локальной копии сайта у себя дома под Windows9x, а затем использовать созданные скриптом файлы на сервере

risearch.zip еще один рисеч

Просто отличный скрипт поиска на сервере. Индексирует файлы на сервере, начиная с той директории, которую вы указали как корневая. Имеет файл, в который вы записываете пути к файлам или папкам, которые не нужно индексировать, например /cgi-bin/, /images/ и т.д. Прост в настройке. Имеет огромное количество функций. Ищет русские слова. Имеет множество вариантов поиска. Может использовать для базы как обычные текстовые файлы так и базы данных. И еще много всего...

133_133.zip

Мощный скрипт поиска на сервере, прост в установке, имеет функцию запрета индексирования файлов и каталогов и многое другое. Новое в этой версии: · Новая система индексирования, использует векторную модель для более качественных результатов. · Гобализация (правильно ищет независимо от языка). · Более быстрый и надежный алгоритм поиска. · Уменьшены затраты памяти при индексировании больших объемов документов. · Улучшенные конфигурационные утилиты.

144_144.zip

PS: это perl

140_140.zip

2070.zip

2077.zip

2079.zip

2081.zip

2085.zip

2087.zip

risearch.zip

133_133.zip

144_144.zip

Изменено пользователем Jmd
Ссылка на комментарий
Поделиться на другие сайты

Решил все же написать небольшой пример поискового механизма на PHP.

Пусть есть таблица в MySQL articles, по которой и будем производить поиск, пусть наша таблица сосотоит из столбцов id, content, author, datetime.

Допустим в нашей таблице находится не мало статей и нам нужно сделать по ним поиск.

HTML шаблон будет выглядеть примерно так:

<html><title>Страница поиска</title><table width=100% height=100% align=center><tr><td width=50% height=50% align=center valign=center><center><b>Поиск</b></center><form action="?action=search" method=post><br><center><input type=text name=srchstr class=button size=50><br><br></center><br><br><center><input type=submit value=Искать! class=button></center></form></td></tr></table></html>

PHP скрипт находится в на той же странице, что и сам шаблон

<?switch ($_GET['action']) {case'search':if (empty ($_POST['srchstr'])) die ("<script>alert ('Введите текст поиска!');history.back()</script>");else $str = $_POST['srchstr'];// Здесь обрабатываем строки функциями проверки и чистки$str = ...$search_res = mysql_query ("SELECT * FROM articlesWHERE(locate(lower('$str'),lower(content)) > 0) ORDER BY id DESC")or die (mysql_error ());$nums = mysql_num_rows ($search_res);if ($nums == "0" || empty ($nums)) echo "<script>alert (\"По вашему запросу ничего не найдено!\");history.back()</script>";else echo "<script>alert (\"Найдено $nums записей\")</script>";echo "<br><center><font size=2><b>Результаты поиска</b></font></center><br>\n <table style=\"\r\nwidth:400px;\r\nbackground-color:#E0E0E0;\r\nborder-bottom:1px solid black;\r\nborder-top:1px solid black;\r\nborder-right:1px solid black;\r\nborder-left:1px solid black;\" align=center>\r\n";while ($mas = mysql_fetch_array ($search_res)) {// Выделяем найденные фразы красным$content = preg_replace ("/(".$str.")/si","<font color=red>$str</font>",$mas['content']);// Обрезаем кусок контента до 50 символов и выводим в цикле из базыecho "<tr><td><u>$title</u></td></tr><tr><td> <font size=1 color=gray>".substr ($content,0,50)." ...</font></td>";// Желательно сделать ссылку на оригинальный контент, но так, как я не знаю архитектуру твоего сайта, пример приводить не буду}echo "</table>";// [[END CASE - SEARCH]]break;}?>

Если что- то не понятно, пиши постараюсь разъяснить.

Если хочешь использовать этот скрипт, тебе придется его доработать и немного изменить так, как я писал для индивидуального примера.

Ссылка на комментарий
Поделиться на другие сайты

  • 2 года спустя...

Решил все же написать небольшой пример поискового механизма на PHP.

Пусть есть таблица в MySQL articles, по которой и будем производить поиск, пусть наша таблица сосотоит из столбцов id, content, author, datetime.

Допустим в нашей таблице находится не мало статей и нам нужно сделать по ним поиск.

HTML шаблон будет выглядеть примерно так:

<html><title>Страница поиска</title><table width=100% height=100% align=center><tr><td width=50% height=50% align=center valign=center><center><b>Поиск</b></center><form action="?action=search" method=post><br><center><input type=text name=srchstr class=button size=50><br><br></center><br><br><center><input type=submit value=Искать! class=button></center></form></td></tr></table></html>

PHP скрипт находится в на той же странице, что и сам шаблон

<?switch ($_GET['action']) {case'search':if (empty ($_POST['srchstr'])) die ("<script>alert ('Введите текст поиска!');history.back()</script>");else $str = $_POST['srchstr'];// Здесь обрабатываем строки функциями проверки и чистки$str = ...$search_res = mysql_query ("SELECT * FROM articlesWHERE(locate(lower('$str'),lower(content)) > 0) ORDER BY id DESC")or die (mysql_error ());$nums = mysql_num_rows ($search_res);if ($nums == "0" || empty ($nums)) echo "<script>alert (\"По вашему запросу ничего не найдено!\");history.back()</script>";else echo "<script>alert (\"Найдено $nums записей\")</script>";echo "<br><center><font size=2><b>Результаты поиска</b></font></center><br>\n <table style=\"\r\nwidth:400px;\r\nbackground-color:#E0E0E0;\r\nborder-bottom:1px solid black;\r\nborder-top:1px solid black;\r\nborder-right:1px solid black;\r\nborder-left:1px solid black;\" align=center>\r\n";while ($mas = mysql_fetch_array ($search_res)) {// Выделяем найденные фразы красным$content = preg_replace ("/(".$str.")/si","<font color=red>$str</font>",$mas['content']);// Обрезаем кусок контента до 50 символов и выводим в цикле из базыecho "<tr><td><u>$title</u></td></tr><tr><td> <font size=1 color=gray>".substr ($content,0,50)." ...</font></td>";// Желательно сделать ссылку на оригинальный контент, но так, как я не знаю архитектуру твоего сайта, пример приводить не буду}echo "</table>";// [[END CASE - SEARCH]]break;}?>

Если что- то не понятно, пиши постараюсь разъяснить.

Если хочешь использовать этот скрипт, тебе придется его доработать и немного изменить так, как я писал для индивидуального примера.

Спасибо огромное за скрипт!Все здорово!Подключил к БД,все ищется,слова подчеркиваются,но только по одной таблице.

Как мне написать запрос,что бы искалось не только в таблице,например "news" но и в "team", "n..." и т.д...???

За ранее благодарен!)

Ссылка на комментарий
Поделиться на другие сайты

Гость
Эта тема закрыта для публикации ответов.
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...