Войти
Меню :
search (6)
php (386)



Blog (1575)
php (386)
js (295)
html (152)
css (139)
html tags (62)
js tag (56)
js method (44)
jquery (42)
php array (38)
ruweb.net (37)
text (37)
js date (33)
other (32)
online (30)
form html (30)
Показать еще :
fonts (30)
js events (22)
php file (21)
foto (20)
atom (20)
input (19)
database (19)
php date (18)
svg (18)
forum (18)
mysql (17)
hosting (17)
info (17)
lingvo (17)
php time (16)
board (16)
php img (16)
dosite (16)
color (15)
js url (14)
jsphp (14)
img (14)
js time (14)
table (13)
select (13)
notepad (13)
знак (13)
html book (13)
htaccess (13)
osclass (13)
yandex (13)
download (12)
keyboard (12)
dw block (12)
php path (12)
icon (11)
$ server (11)
form (10)
mouse (10)
vs code (10)
js delete (10)
ftp (9)
hover (8)
chart (8)
php url (7)
comment (7)
php post (7)
adminka (6)
php get (6)
hey tag (6)
canvas (6)
нок (6)
list (6)
iframe (6)
click (6)
js vars (6)
reg.ru (5)
tag a (5)
js math (5)
web (5)
js id (5)
value (5)
console (5)
js file (5)
xml (5)
heading (5)
mb (5)
year (5)
js form (4)
ssl (4)
vk (4)
symbols (4)
task (4)
scandir (4)
js hash (4)
bbcode (4)
base64 (4)
youtube (4)
day (4)
numbers (4)
php var (4)
pages (4)
week (4)
month (4)
games (4)
submit (4)
file (3)
рся (3)
units (3)
jquery post (3)
https (3)
js post (3)
line (3)
money (3)
video (3)
padding (3)
domen (3)
aimp (3)
ucoz (3)
куб (3)
captcha (3)
src (2)
blob (2)
google (2)
prompt (2)
height (2)
details (2)
seo (2)
sitemap (2)
tag hr (2)
counter (2)
пк (2)
typeof (2)
arrows (2)
qr code (2)
js img (2)
lingvo (1)
windows (1)
archive (1)
speed (1)
scroll (1)
cursor (1)
webp (1)
ok (1)
php day (1)
jino (1)
smile (1)
нод (1)
rutube (1)

Поиск по контенту сайта php примеры

Поиск по сайту, поиск по файлам и вообще будем искать на сайте . Давно хотел сделать такую тему, как поиски внутри сайта, внутри файлов. В общем сделать рабочий скрипт поиска по сайту.

В самом начале давайте разберемся, где будем искать. Будем искать не только в файлах, но и сделаем поиск по базе данных.

Поиск по сайту php

  1. Алгоритм поиска по сайту
  2. Поиск по контенту сайта -> база данных
  3. Поиск по контенту сайта -> файлы
    1. DW - search 1.2
    2. Скачать на странице все скрипты.

  1. Алгоритм поиска по сайту

    Прежде чем перейти к алгоритму... данный поиск стоит у нас на сайте, см. сверху. Единственное отличие - получаем название страницы и выводим её. Адоптировано под нашу структуру сайта. Название страницы хранится в переменной $title = "";

    как получаем!?

    $new = my_strtolower( @file_get_contents(путь до файла)); //получаем файл в строку.

    preg_match('/\$title(.+?);/i', $new, $ttle); //получаем данные внутри переменной

    $titles = str_replace(array('=','"',"'"), '', $ttle[1]) ;//удаляем равно и кавычки.

    if (substr_count( my_strtolower($titles), my_strtolower ( $poisk ))) //проверяем на совпадение в заголовке искомого слова $poisk и если совпадение найдено выделяем тегом "mark".

    { $titles = str_replace( my_strtolower ( $poisk ) , '<mark>'.my_strtolower ( $poisk ).'</mark>', my_strtolower($titles)) ; }

    Алгоритм поиска по сайту - нужно взять контент страницы,(либо ту строку базы данных, которая отвечает за контент) и проверить на совпадение с искомым словом, для этого будем использовать функцию substr_count и выдать на какой странице данное совпадение находится.

    И далее в цикле проверить все файлы или строки в базе на совпадение!

    Все просто! wall


  2. Поиск по контенту сайта -> база данных

    Для данного примера есть архив со скриптом.

    04.05.2020 Друзья!

    Я уже давно не занимался базами данных, поэтому, никак проверить не смогу работоспособность данного скрипта!

    НО! Схематично могу набросать, как бы я делал поиск по базе данных сайта.

    Нам понадобится:

    Берем скрипт вывода из базы данных

    Все что внутри цикла while удаляем и туда вставляем:

    if(@substr_count($row[CONTENT], $poisk) and $poisk)
    {
    $line_count ++;
    $rezult .= '<a href ="'.$row['url'].'" target="_blank">'.$row['title'].'</a>' ;
    }

    Где :

    1). $row['CONTENT'] - столбец, отвечающий за контент
    2). $row['url'] - столбец, отвечающий за ссылку
    3). $row['title'] - столбец, отвечающий за заголовок

    Ниже скрипта располагаем форму для отправки запроса на поиск оп базе данных:

    <form method="POST" action="">
    <input type="text" name="poisk">
    <input type="submit" name="button" value="ОТПРАВИТЬ">
    </form>

    В самом верху страницы располагаем функцию собственную функцию strtolowermy_strtolower

    function my_strtolower($str) { $ru_array = array('А' => 'а','Б' => 'б','В' => 'в','Г' => 'г','Д' => 'д', 'Е' => 'е','Ё' => 'ё','Й' => 'й','Ж' => 'ж','З' => 'з','И' => 'и','К' => 'к','Л' => 'л','М' => 'м','Н' => 'н','О' => 'о','П' => 'п','Р' => 'р','С' => 'с','Т' => 'т','У' => 'у','Ф' => 'ф','Х' => 'х','Ц' => 'ц','Ч' => 'ч','Ш' => 'ш','Щ' => 'щ','Ъ' => 'ъ','Ы' => 'ы','Ь' => 'ь','Э' => 'э','Ю' => 'ю','Я' => 'я'); return strtr($str,$ru_array ); }

    Следующей строкой получаем данные из формы :

    if($_POST['poisk']){ $poisk = strip_tags ( $_POST['poisk'] );}

    Пропускам данные через my_strtolower:

    $poisk = my_strtolower( $poisk );

    Скачать скрипт поиска по базе данных

    Скрипт поиска по базе данных.

  3. Поиск по контенту сайта -> файлы DW - search 1.2

    04.05.2020Для данного параграфа у нас есть :

    Пример на отдельной странице.

    Скачать со страницы скриптов

    Описание обновлено!

    Если мы говорим о поиске по контенту на сайте, который сделан на файлах, то первое с чем мы сталкиваемся, против базы данных, как получить все ссылки на все файлы!?

    Другими словами, где у вас есть все ссылки вашего сайта!?

    Предположим, что все ваши ссылки есть в карте sitemap.XML - нам нужно извлечь все ссылки из данного файла, а потом в цикле проверить наличие искомого слова...

    Да! И функцию my_strtolower можете заменить на обычную strtolower(если она у вас работает)

    Теперь не нужно вставлять домен, он будет автоматически передаваться в переменную!

    $domen = $_SERVER["HTTP_X_FORWARDED_PROTO"].'://'.$_SERVER["HTTP_HOST"] ;

    1). Получаем из карты все содержимое в строку с помощью file_get_contents

    $ALL_pages = file_get_contents('https://dwweb.ru/sitemap.xml');

    2). Получаем в массив все ссылки из тегов loc с помощью preg_match_all:

    preg_match_all("#<loc>(.+?)</loc>#i", $ALL_pages, $url);

    3). Поскольку первой ячейкой у нас автоматически всегда будет домен, т.е. главная - нам эту ячейку надо удалить!

    $fruit = array_shift($url[1]);

    4). Получим путь до корневой переменная $home(она нам потом понадобится.)

    + Получим в переменную $poisk от правленный поисковый запрос.

    + все буквы приведем к нижнему регистру my_strtolower

    $home = $_SERVER['DOCUMENT_ROOT'];

    if($_POST['poisk']){ $poisk = strip_tags ( $_POST['poisk'] );}

    $poisk = my_strtolower( $poisk );

    5). Создадим условие - будем проверять существование файла + путь заменим ранее полученный домен, на путь на сервере

    if($_POST['button'])

    {

    if( $poisk )

    {

    for ($i = 0; $i < count($ALL_PAGES); $i++)

    {

    if( file_exists( str_replace( $domen , $home , $ALL_PAGES[$i]) ) )

    {

    6).

    Теперь весь контент страницы полученный в цикле через file_get_contents переведем в нижний регистр - my_strtolower и внутри получим путь на сревре заменив домен на $home

    Далее собственно поиск искомого слова в контенте substr_count

    + если что-то найдено, то создаем счетчик +1($line_count)

    + заносим в переменную $rezult адрес страницы, где это было найдено.

    $new = my_strtolower( file_get_contents( str_replace( $domen , $home , $ALL_PAGES[$i]) ) );

    if (substr_count($new, $poisk))

    {

    $line_count += 1;

    $rezult .= '<a href ="'.$ALL_PAGES[$i].'" target="_blank">'.$ALL_PAGES[$i].'</a><br>' ;

    7). Проверяем если счетчик существует, то выводим на экран переменную $vivod_info

    if($line_count)($vivod_info)

    8). и далее если отправлен

    $rezult = 'Отправлен пустой запрос';

    Далее особо ничего интересного... форма + вывод полученных данных...

Не стесняемся говорить спасибо!
О комментах : 05.11.2024
Свои комменты в ожидании переделки!
Когда сделаю не знаю!
Времени нет...
Друзья! Пожалуйста держите себя в рамках приличия!
Иначе сообщение будет удалено, вас в бан - все просто!
Но если, сил нет как хочется высказать всё, что вы думаете об этом, пожалуйста - комменты от Vk - форма ниже:
Помочь проекту DwWeb.ru

Поделиться ссылкой! C друзьями или врагами!

Этим вы очень поможете проекту! Заранее огромное спасибо!

Теги:
поиск по сайту php скрипт поиска по сайту php как сделать поиск по сайту php поиск для сайта php mysql простой поиск по сайту php поиск по сайту без php постраничный поиск по сайту на php mysql реализация поиска на сайте через php скрипт поиска по сайту php без базы данных скрипт поиска по сайту php
dwweb.ru есть здесь:
Все соцсети в одном месте!
Разное :Игра "пятнашки"
Угадай страну по флагу

Кальклятор
Математика онлайн

Списки шифрования
Часы

Числа словами
Названия чисел(max=10305)
Графики

Qr код онлайн

Как сделать сайт?
Md5 онлайн
Sitemap.html
Все статьи авторские, при копироавании активная ссылка обязательна DwWeb.ru! © 2015 - 2024 Контакты. Лучший хостинг : RUWEB + помощь по RUWEB Сайт работает круглосуточно 24/7.
Страница загружена за : 0.025351 секунд.