Поиск по контенту сайта php примеры
В самом начале давайте разберемся, где будем искать. Будем искать не только в файлах, но и сделаем поиск по базе данных.
Поиск по сайту php
- Алгоритм поиска по сайту
- Поиск по контенту сайта ->
база данных - Поиск по контенту сайта ->
файлы
- DW - search 1.2
- Скачать на странице все скрипты.
Алгоритм поиска по сайту
Прежде чем перейти к алгоритму... данный поиск стоит у нас на сайте, см. сверху. Единственное отличие - получаем название страницы и выводим её. Адоптировано под нашу структуру сайта. Название страницы хранится в переменной $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)) ; }
И далее в цикле проверить все файлы или строки в базе на совпадение!
Все просто!
смайлы
Поиск по контенту сайта -> база данных
Для данного примера есть архив со скриптом.
Я уже давно не занимался базами данных, поэтому, никак проверить не смогу работоспособность данного скрипта!
НО! Схематично могу набросать, как бы я делал поиск по базе данных сайта.Нам понадобится:
Берем скрипт вывода из базы данных
Все что внутри цикла while удаляем и туда вставляем:
{
$line_count ++;
$rezult .= '<a href ="'.$row['url'].'" target="_blank">'.$row['title'].'</a>' ;
}
Где :
1). $row['CONTENT'] - столбец, отвечающий за контент2). $row['url'] - столбец, отвечающий за ссылку
3). $row['title'] - столбец, отвечающий за заголовок
Ниже скрипта располагаем форму для отправки запроса на поиск оп базе данных:
<input type="text" name="poisk">
<input type="submit" name="button" value="ОТПРАВИТЬ">
</form>
В самом верху страницы располагаем функцию собственную функцию strtolowermy_strtolower
Следующей строкой получаем данные из формы :
Пропускам данные через my_strtolower:
Скачать скрипт поиска по базе данных
Скрипт поиска по базе данных.Поиск по контенту сайта -> файлы DW - search 1.2
04.05.2020Для данного параграфа у нас есть :
Пример на отдельной странице.
Скачать со страницы скриптов
Описание обновлено!
Если мы говорим о поиске по контенту на сайте, который сделан на файлах, то первое с чем мы сталкиваемся, против базы данных, как получить все ссылки на все файлы!?
Да! И функцию my_strtolower можете заменить на обычную strtolower(если она у вас работает)
+ Получим в переменную $poisk от правленный поисковый запрос.
+ все буквы приведем к нижнему регистру my_strtolower
$home = $_SERVER['DOCUMENT_ROOT'];
if($_POST['poisk']){ $poisk = strip_tags ( $_POST['poisk'] );}
$poisk = my_strtolower( $poisk );
if($_POST['button'])
{
if( $poisk )
{
for ($i = 0; $i < count($ALL_PAGES); $i++)
{
if( file_exists( str_replace( $domen , $home , $ALL_PAGES[$i]) ) )
{
Теперь весь контент страницы полученный в цикле через file_get_contents переведем в нижний регистр - my_strtolower и внутри получим путь на сревре заменив домен на $home
Далее собственно поиск искомого слова в контенте+ если что-то найдено, то создаем счетчик +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>' ;
Далее особо ничего интересного... форма + вывод полученных данных...
поиск по сайту php
скрипт поиска по сайту php
как сделать поиск по сайту php
поиск для сайта php mysql
простой поиск по сайту php
поиск по сайту без php
постраничный поиск по сайту на php mysql
реализация поиска на сайте через php
скрипт поиска по сайту php без базы данных
скрипт поиска по сайту php

подробнее.
подробнее.
подробнее.
подробнее.
подробнее.