Html скрипт поиска по сайту: Организация поиска по веб-странице на JavaScript (без jQuery) / Хабр

html — Скрипт для формы поиска

Задать вопрос

Вопрос задан

Изменён 6 лет 10 месяцев назад

Просмотрен 162 раза

У меня есть форма поиска. Нужен файл search.php, ну или помощь в написании)

Вот собственно сам код формы:

<div>
<form method="post" action="search.php">
<input type="text" name="q" value="" /> <input type="submit" value="Искать" /><br />
Выберите тип файла:<br />
<select name="tf"><option value="">Любой</option>
<option value="vid">Видео</option>
<option value="vid.3gp">Видео: 3gp</option>
<option value="vid.
avi">Видео: avi</option> <option value="vid.mp4">Видео: mp4</option> <option value="img">Картинки</option> <option value="img.jpg">Картинки: jpg</option> <option value="img.jpeg">Картинки: jpeg</option> <option value="img.png">Картинки: png</option> <option value="img.gif">Картинки: gif</option> <option value="img.wbmp">Картинки: wbmp</option> <option value="mus">Музыка</option> <option value="mus.mp3">Музыка: mp3</option> <option value="mus.wav">Музыка: wav</option> <option value="mus.mid">Музыка: mid</option> <option value="mus.amr">Музыка: amr</option> <option value="mus.mmf">Музыка: mmf</option> <option value="thm">Темы</option> <option value="thm.thm">Темы: thm</option> <option value="thm.nth">Темы: nth</option> <option value="thm.sdt">Темы: sdt</option> <option value="mid">Приложения/Игры</option> <option value="mid.
jar">Приложения/Игры: jar</option> <option value="mid.jad">Приложения/Игры: jad</option> <option value="mid.sis">Приложения/Игры: sis</option> <option value="mid.apk">Приложения/Игры: apk</option> <option value="mid.zip">Приложения/Игры: zip</option> </select><br/> Искать в:<br /> <select name="dt"> <option value="0">Все</option> <option value="1">Новинки</option> <option value="2">За последний месяц</option> </select> </form> </div>
  • html
  • php

1

примерно так:

    if(isset($_POST['q']) AND isset($_POST['tf']) AND isset($_POST['dt']))
    {
        if(empty($_POST['tf']) AND empty($_POST['dt']))
        {
            // тип файла и категория - любые
        }
        elseif(empty($_POST['tf']))
        {
            // тип файла - любой
        }
        elseif(empty($_POST['dt']))
        {
            // категория - любая
        }
        else
        {
            // поиск по типу файла и категории
            // select * from table, where file=$_POST['tf'], and where catalog=$_POST['dt']
        }
    }

Как настроить поиск на сайте

Чтобы пользователь интернет-магазина совершил покупку, он должно легко и просто найти товар, который ему необходим. Если клиент будет переходить от страницы к странице сайта в поисках необходимого, то в скором времени покинет веб-ресурс и уйдет к конкурентам. Поэтому задача владельца магазина настроить поиск на своем сайте таким образом, чтобы посетитель ресурса мог найти нужный ему товар или услугу в максимально короткий промежуток времени.

Существует несколько способов настройки поиска сайтах: силами разработчика сайта с помощью специальных скриптов или возможностей CMS (системы создания сайтов), на которой создан ресурс. Также вы можете использовать инструменты крупнейших поисковиков – Яндекса и Google.

Как настроить поиск на сайте через Яндекс

Поисковый инструмент от Яндекс предоставляется бесплатно для любого пользователя. Сервис имеет отличный морфологический анализ, исправляет ошибки в запросе, а также раскладку клавиатуры, вы самостоятельно можете настроить синонимы к поисковым словам.

Интерфейс поиска предлагает сделать настройку поисковой строки на вашем сайте: от яркого элемента до скромного сервиса.

Для того чтобы установить поиск Яндекса на сайте необходимо зарегистрироваться или зайти в уже имеющийся аккаунт и перейти на страницу установки поиска.

Нажав на кнопку Установить поиск, вы попадаете на страницу настройки его параметров:

Процесс настройки состоит из пяти этапов.

  1. Сначала вы задаете название поиска. Это техническое имя, оно будет видно только вам. Далее вы вводите название поиска, которое будет отображаться пользователям Opensearch, например, поиск по сайту nic.ru.

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

  1. На втором шаге вы выбираете как будет отображаться поисковая строка на вашем сайте.

  1. На третьем шаге вы задаете как будет выглядеть результат поиска: он будет отображаться на вашем сайте или на сайте Яндекса.
  2. Затем вы можете проверить, что настройки сделаны верно и поиск работает.
  3. На последнем этапе вам будет сгенерирован код поиска для вставки на ваш сайт.

Как настроить поиск на сайте через Google

Какие преимущества есть у поиска Google:

  • Персонализация: вы можете выбирать по своему усмотрению оформление строки поиска и поисковой выдачи, в том числе и установить логотип своей компании.
  • Поддержка различных языков в поиске.
  • Настройка ранжирования поиска, например, вначале выводить более свежую по дате публикации информацию.
  • Возможность искать картинки, настраивать такой поиск вручную.
  • Пополнение базы запросов синонимами и новыми вариантами написания (например, на русском и английском).
  • Управление подсказками и настройка их вручную.
  • Взаимодействие с другими продуктами Google (конечно, наиболее важное – интеграция с Google Analytics).

Для настройки поиска с помощью Google также потребуется залогиниться в системе.

Весь процесс состоит из трех этапов:

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

  1. Затем вы можете перейти к настройкам поиска: отрегулировать его функции, выбрать внешний вид, дополнить поисковые страницы, включить или отключить рекламу, указать язык, настроить поиск по категориям.
  2. Последний этап – сохранение всех настроек. Даже после того, как вы установили код на сайт, поиск можно редактировать и вносить изменения в любой момент. 

Заключение

При настройке поиска на сайте не забывайте, что страницы, которые вы добавили в поиск, должны быть открыты для индексации и попали на проверку поисковым роботом Яндекса или Гугла.

Внедрение окна поиска | Программируемая поисковая система

Создав программируемую поисковую систему, вы можете добавить на свой сайт программируемый поисковый элемент.

Для этого вам нужно скопировать некоторый код и вставить его в HTML-код вашего сайта, где вы хотите, чтобы ваша поисковая система отображалась.

  1. В Панели управления выберите поисковую систему, которую хотите использовать.
  2. В разделе Basic на странице Обзор нажмите Получить код . Скопируйте код и вставьте его в исходный HTML-код вашей страницы, где вы хотите, чтобы появился программируемый элемент поиска.

Элемент

является заполнителем — здесь будет отображаться элемент поиска (и поле поиска, и результаты поиска).

 

Опробование различных макетов

Во многих случаях имеет смысл отображать окно поиска независимо от результатов поиска. Макет с двумя столбцами позволяет отображать окно поиска в одной области вашей страницы (например, на боковой панели) и отображать результаты в другой (например, в основной области страницы).

Чтобы изменить макет вашего двигателя, перейдите в раздел Layout на странице Look and feel в панели управления. После выбора и сохранения двухколоночного макета в Панели управления вам также необходимо изменить HTML-код для элемента поиска.

 
Область 1 (например, боковая панель) <дел>
<дел> Область 2 (например, основная область страницы) <дел>

Еще один интересный макет — двухстраничный вариант. Это позволяет вам реализовать собственное окно поиска на одной странице и отображать стандартные результаты поиска на другой странице, используя параметры в адресной строке.

Выберите и сохраните двухстраничный макет в Панели управления. На одной странице внедрите отдельное окно поиска, изменив атрибут resultsUrl , чтобы он указывал на URL-адрес, по которому вы хотите отобразить результаты.

 

Попробуйте

Чтобы реализовать отдельную страницу результатов поиска, вставьте фрагмент кода результатов на свою страницу результатов:

  <дел>
 

Теперь вы можете активировать результаты поиска на этой странице, передав аргумент «q» в URL-адресе:

 https://my-results-page-url.com/?q=myQuery
 

Обратите внимание на параметр q=myQuery в адресной строке — так

Элемент знает, какие результаты запроса отображать.

Попробуйте

Далее…

Перейти к включению автозаполнения.

Список сценариев поисковых систем для веб-сайтов

Сценарий простого поиска Мэтта

Сценарий простого поиска позволяет владельцам веб-сайтов настроить поиск на своем сайте, чтобы их пользователи могли вводить ключевые слова и находить все документы, соответствующие этим ключевым словам. Это было написано, чтобы быть простым, поэтому вариантов не так много. Результаты возвращаются в произвольном порядке, и на них ссылается тег этой страницы. <br/> Стоимость: БЕСПЛАТНО <br/> Простой скрипт поиска по веб-сайту Мэтта</p><h4><span class="ez-toc-section" id="Perfect_Search_331b"> Perfect Search 3.31b </span></h4><p> Perlfect Search под лицензией с открытым исходным кодом (GPL) представляет собой пару отдельных скриптов. Индексатор, который автоматически сканирует и индексирует веб-сайт, и поисковая система, скрипт cgi, который обслуживает поисковые запросы по ключевым словам по индексу и отображает страницы результатов в формате html в стандартном формате, включая заголовок, описание и рейтинг релевантности для каждого соответствующий документ.<img class="lazy lazy-hidden" loading='lazy' src="//xn--90abhccf7b.xn--p1ai/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src='/800/600/http/architecture-and-design.ru/wp-content/uploads/b/2/c/b2c4063a76f94d77d81b2ea79b06903c.jpeg' /><noscript><img loading='lazy' src='/800/600/http/architecture-and-design.ru/wp-content/uploads/b/2/c/b2c4063a76f94d77d81b2ea79b06903c.jpeg' /></noscript></p><p><h5><span class="ez-toc-section" id="i-9"> Рекламные ссылки </span></h5></p><p> Расширенные функции включают стоп-слова, мощный механизм исключения и удобную утилиту автоматической установки и настройки. Основные возможности скрипта — система индексации с поддержкой ранжирования, интернационализация, выделение условий поиска на странице результатов, индексация через локальную файловую систему или через http, настраиваемый список стоп-слов, индексация файлов PDF и MS-Word. (требуются дополнительные компоненты), создание файла журнала, чтобы показать, что искали посетители, полностью настраиваемая страница результатов поиска и многое другое. <br/> Стоимость: БЕСПЛАТНО <br/> www.perlfect.com</p><h4><span class="ez-toc-section" id="WebSearch"> WebSearch Скрипт поисковой системы веб-сайта </span></h4><p> WebSearch позволяет пользователям искать ключевые слова в документах, расположенных на вашем веб-сайте. Он ищет основной текст документов, а также текст ALT и любую информацию, содержащуюся в тегах META «ключевые слова» и «описание». Сценарий оценивает соответствующие URL-адреса на основе частоты появления запрошенных ключевых терминов в документах, а также указывает дату последнего изменения каждого файла.<img class="lazy lazy-hidden" loading='lazy' src="//xn--90abhccf7b.xn--p1ai/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src='/800/600/http/fuzeservers.ru/wp-content/uploads/0/4/f/04f13a8909e803a549f2a2d6144c66c3.jpeg' /><noscript><img loading='lazy' src='/800/600/http/fuzeservers.ru/wp-content/uploads/0/4/f/04f13a8909e803a549f2a2d6144c66c3.jpeg' /></noscript> Вы можете легко настроить количество совпадений, которые будут отображаться на каждой странице результатов. <br/> Стоимость: БЕСПЛАТНО <br/> www.awsd.com</p><h4><span class="ez-toc-section" id="_-_RiSearch"> Скрипт поиска по веб-сайту RiSearch </span></h4><p> RiSearch — мощный и очень быстрый скрипт поиска, предназначенный для работы с сотнями мегабайт текстовых данных. Новая версия скрипта основана на движке RiSearch Pro, но имеет меньшие возможности. Он полностью основан на Perl и не использует базу данных или какие-либо библиотеки. Сценарий поиска веб-сайта RiSearch работает на разных языках и использует бинарные файлы, не зависящие от платформы. Индекс может быть создан через локальную файловую систему или через http. Вы также можете создать список стоп-слов и страницу результатов, чтобы они соответствовали странице вашего веб-сайта. Результаты сортируются по релевантности, размеру файла, дате и ключевым словам, выделенным на странице результатов. <br/> Стоимость: 25 долларов США за RiSearch и 50 долларов США (за лицензию) за версию Pro <br/> Сценарий поиска по веб-сайту от RiSearch</p><h4><span class="ez-toc-section" id="APB_Systems"> APB Systems </span></h4><p> APB Search Pro 3.<img class="lazy lazy-hidden" loading='lazy' src="//xn--90abhccf7b.xn--p1ai/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src='/800/600/http/i.pinimg.com/originals/db/f4/23/dbf42304e17e0f09801674e7be6a9322.png' /><noscript><img loading='lazy' src='/800/600/http/i.pinimg.com/originals/db/f4/23/dbf42304e17e0f09801674e7be6a9322.png' /></noscript> 1 — это полностью настраиваемая система индексации и поиска вашего веб-сайта. APB Search Pro прост в установке с настраиваемой структурой вывода и создает журнал поисковых запросов, выполненных пользователями. Вам не нужен предварительный опыт программирования для работы с APB Search Pro. Сценарий установки сначала создает индексный файл, в котором выполняется поиск. Есть еще <i> облегченная </i> версия APB Search, которая является бесплатной. Версия Pro является условно-бесплатной и стоит 39 долларов. Лайт версия не обладает всеми функциями профи. <br/> Стоимость: Freeware (Light version) и Shareware (Pro версия) <br/> www.apbsystems.com</p><h4><span class="ez-toc-section" id="PSLightningSearch"> PSLightningSearch скрипт поиска по веб-сайту </span></h4><p> PSLightningSearch — мощная полнотекстовая поисковая система для вашего веб-сайта. Он поддерживает опцию индексации, с помощью которой вы создаете индекс всех веб-страниц на вашем сайте. Затем все поиски выполняются в файле базы данных, а не на лету, что помогает быстрее отображать результаты поиска.<img class="lazy lazy-hidden" loading='lazy' src="//xn--90abhccf7b.xn--p1ai/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src='/800/600/http/navikur.ru/wp-content/uploads/5/c/b/5cbd9fd09bea1b8ee36e9f16f2912189.jpeg' /><noscript><img loading='lazy' src='/800/600/http/navikur.ru/wp-content/uploads/5/c/b/5cbd9fd09bea1b8ee36e9f16f2912189.jpeg' /></noscript></p><p> Скрипт позволяет указать, в каких каталогах искать, а какие исключать из поиска. Он также позволяет указать отдельные документы, которые необходимо исключить. Вы можете создать список ключевых слов, которые будут игнорироваться, чтобы ускорить поиск. Записи выполненных поисков создаются таким образом, чтобы вы знали, что посетители ищут на вашем веб-сайте. Поиск может выполняться с учетом или без учета регистра, а также по словам, фразам и т. д. <br/> Стоимость: $35 <br/> www.perlservices.net</p><h4><span class="ez-toc-section" id="Dansie_Search_Engine_20"> Dansie Search Engine 2.0 </span></h4><p> Dansie Search Engine — это скрипт поиска по веб-сайту, написанный на языке CGI Perl и позволяющий посетителям выполнять поиск на вашем веб-сайте. Сценарий работает на серверах, поддерживающих версии Perl 4 или Perl 5, и требует настройки четырех переменных в начале. Позже можно настроить другие переменные, чтобы они соответствовали внешнему виду вашего веб-сайта. Ключевые слова, найденные в результатах поиска, отображаются жирным шрифтом, а сценарий ведет журнал того, что посетители искали на вашем веб-сайте, что помогает понять, что интересует посетителей.<img class="lazy lazy-hidden" loading='lazy' src="//xn--90abhccf7b.xn--p1ai/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src='/800/600/http/luxe-host.ru/wp-content/uploads/e/0/4/e049206b289f48dde1bb4665e1c9337e.jpeg' /><noscript><img loading='lazy' src='/800/600/http/luxe-host.ru/wp-content/uploads/e/0/4/e049206b289f48dde1bb4665e1c9337e.jpeg' /></noscript></div></div></div></article><nav class="navigation post-navigation" aria-label="Записи"><h2 class="screen-reader-text">Навигация по записям</h2><div class="nav-links"><div class="nav-previous"><a href="https://xn--90abhccf7b.xn--p1ai/raznoe/professiya-zhurnalista-opisanie-professiya-zhurnalist-kto-eto-kem-rabotayut-kakie-predmety-nado-sdavat-na-zhurnalistiku.html" rel="prev">Профессия журналиста описание: Профессия журналист: кто это, кем работают — какие предметы надо сдавать на журналистику</a></div><div class="nav-next"><a href="https://xn--90abhccf7b.xn--p1ai/html/jquery-html-content-add-jquery-remove-elements.html" rel="next">Jquery html content add: jQuery Remove Elements</a></div></div></nav><div id="comments" class="comments-area"><div id="respond" class="comment-respond"><h3 id="reply-title" class="comment-reply-title">Добавить комментарий <small><a rel="nofollow" id="cancel-comment-reply-link" href="/html/html-skript-poiska-po-sajtu-organizacziya-poiska-po-veb-stranicze-na-javascript-bez-jquery-habr.html#respond" style="display:none;">Отменить ответ</a></small></h3><form action="https://xn--90abhccf7b.xn--p1ai/wp-comments-post.php" method="post" id="commentform" class="comment-form" novalidate><p class="comment-notes"><span id="email-notes">Ваш адрес email не будет опубликован.</span> <span class="required-field-message">Обязательные поля помечены <span class="required">*</span></span></p><p class="comment-form-comment"><label for="comment">Комментарий <span class="required">*</span></label><textarea id="comment" name="comment" cols="45" rows="8" maxlength="65525" required></textarea></p><p class="comment-form-author"><label for="author">Имя <span class="required">*</span></label> <input id="author" name="author" type="text" value="" size="30" maxlength="245" autocomplete="name" required /></p><p class="comment-form-email"><label for="email">Email <span class="required">*</span></label> <input id="email" name="email" type="email" value="" size="30" maxlength="100" aria-describedby="email-notes" autocomplete="email" required /></p><p class="comment-form-url"><label for="url">Сайт</label> <input id="url" name="url" type="url" value="" size="30" maxlength="200" autocomplete="url" /></p><p class="form-submit"><input name="submit" type="submit" id="submit" class="submit" value="Отправить комментарий" /> <input type='hidden' name='comment_post_ID' value='68315' id='comment_post_ID' /> <input type='hidden' name='comment_parent' id='comment_parent' value='0' /></p></form></div></div></main></div><div id="sidebar-primary" class="widget-area sidebar " role="complementary"><div class="sidebar-main"><div id="yandex_rtb_R-A-744004-7" class="yandex-adaptive classYandexRTB"></div> <script type="text/javascript"> window.yaContextCb.push(()=>{Ya.Context.AdvManager.render({renderTo: "yandex_rtb_R-A-744004-7",blockId: "R-A-744004-7",pageNumber: 11,onError: (data) => { var g = document.createElement("ins"); g.className = "adsbygoogle"; g.style.display = "inline"; g.style.width = "300px"; g.style.height = "600px"; g.setAttribute("data-ad-slot", "9935184599"); g.setAttribute("data-ad-client", "ca-pub-1812626643144578"); g.setAttribute("data-alternate-ad-url", "https://chajnov.ru/back.php"); document.getElementById("yandex_rtb_[rtbBlock]").appendChild(g); (adsbygoogle = window.adsbygoogle || []).push({}); }})}); window.addEventListener("load", () => { var ins = document.getElementById("yandex_rtb_R-A-744004-7"); if (ins.clientHeight == "0") { ins.innerHTML = stroke2; } }, true); </script><section id="search-2" class="widget widget_search"><div class="zita-widget-content"><form role="search" method="get" id="searchform" action="https://xn--90abhccf7b.xn--p1ai/"><div class="form-content"> <input type="text" placeholder="search.." name="s" id="s" value=""/> <input type="submit" value="Search" /></div></form></div></section><section id="nav_menu-4" class="widget widget_nav_menu"><div class="zita-widget-content"><h2 class="widget-title">Рубрики</h2><div class="menu-2-container"><ul id="menu-2" class="menu"><li id="menu-item-19021" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-19021"><a href="https://xn--90abhccf7b.xn--p1ai/category/css">Css</a></li><li id="menu-item-19022" class="menu-item menu-item-type-taxonomy menu-item-object-category current-post-ancestor current-menu-parent current-post-parent menu-item-19022"><a href="https://xn--90abhccf7b.xn--p1ai/category/html">Html</a></li><li id="menu-item-19023" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-19023"><a href="https://xn--90abhccf7b.xn--p1ai/category/js">Js</a></li><li id="menu-item-19024" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-19024"><a href="https://xn--90abhccf7b.xn--p1ai/category/adaptiv">Адаптивный сайт</a></li><li id="menu-item-19025" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-19025"><a href="https://xn--90abhccf7b.xn--p1ai/category/verstk">Верстка</a></li><li id="menu-item-19026" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-19026"><a href="https://xn--90abhccf7b.xn--p1ai/category/idei">Идеи</a></li><li id="menu-item-19028" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-19028"><a href="https://xn--90abhccf7b.xn--p1ai/category/chego-nachat">С чего начать</a></li><li id="menu-item-19029" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-19029"><a href="https://xn--90abhccf7b.xn--p1ai/category/sovety">Советы</a></li><li id="menu-item-19031" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-19031"><a href="https://xn--90abhccf7b.xn--p1ai/category/shablon">Шаблоны</a></li><li id="menu-item-19027" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-19027"><a href="https://xn--90abhccf7b.xn--p1ai/category/raznoe">Разное</a></li></ul></div></div></section></div></div></div></div><footer id="zita-footer"><div class="footer-wrap widget-area"><div class="bottom-footer"><div class="bottom-footer-bar ft-btm-one"><div class="container"><div class="bottom-footer-container"> © Компания <a href="http://вебджем.рф"> Вебджем.рф </a> 2009 - 2025 | Все права защищены.</a></div></div></div></div></div></footer> <noscript><style>.lazyload{display:none}</style></noscript><script data-noptimize="1">window.lazySizesConfig=window.lazySizesConfig||{};window.lazySizesConfig.loadMode=1;</script><script async data-noptimize="1" src='https://xn--90abhccf7b.xn--p1ai/wp-content/plugins/autoptimize/classes/external/js/lazysizes.min.js'></script> <!-- noptimize --> <style>iframe,object{width:100%;height:480px}img{max-width:100%}</style><script>new Image().src="//counter.yadro.ru/hit?r"+escape(document.referrer)+((typeof(screen)=="undefined")?"":";s"+screen.width+"*"+screen.height+"*"+(screen.colorDepth?screen.colorDepth:screen.pixelDepth))+";u"+escape(document.URL)+";h"+escape(document.title.substring(0,150))+";"+Math.random();</script> <!-- /noptimize --> <script defer src="https://xn--90abhccf7b.xn--p1ai/wp-content/cache/autoptimize/js/autoptimize_a5525df7354e9c4926a53db2b62ba665.js"></script></body></html><script src="/cdn-cgi/scripts/7d0fa10a/cloudflare-static/rocket-loader.min.js" data-cf-settings="5789f6a3029ad9b98b6a8efb-|49" defer></script>