![]() |
Поиск по сайту
Здравствуйте.
Помогите разобраться в составлении поиска по сайту. В составе сайта около 1000 статических страниц HTML. Множество страниц находится в папках. Я хочу сделать поиск по всем страницам с помощью РНР и MySQL. Для это мне необходимо что-то сделать с помощью РНР, что бы занести всю информацию в БД. Подскажите, каким образом нужно обработать информацию со всех страниц, чтобы убрать тэги и поместить в таблицу в БД. (вроде как с помощью буферизации или я ошибаюсь?) Как выглядит этот код и где он должен находиться? Спасибо. |
Вот тебе функция которая убирает ХТМЛ и ПХП теги:
strip_tags($text); Ну а далее, если ты уже решил занести в базу (хотя первый раз слышу чтобы так делали =), лучше наверно будет через explode(' ',$file_content), или сразу прочитать файл как массив, потом фильтрануть его на уникальность слов, чтобы не повторялись. Потом занести это дело в базу с полями типа: ID | WORD | URL_PAGE | PAGE_NAME При заносе следующей страницы проверять нет ли такого слова уже в базе запросом типа SELECT id WHERE word LIKE '%'.mysql_escape_string($word).'%' Вот и все =) ПРи поиске, берем текст что ввел клиент, делаем с нево масив слов и генерируем запрос и получаем результат! =) |
Прежде всего спасибо большое, что ответили.
Прошло довольно много времени, но вопрос об организации поиска для меня остается открытым. На одном из форумов нашел следующую структуру: "Поиск через БД Mysql алгоритм следующий: 1. создаем таблицу CREATE TABLE search ( id INT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY, url VARCHAR(200), content TEXT, FULLTEXT (content) ); 2. буферизируем ссылку $url=index.php //Как я понимаю, это начальная страница $bufer = file_get_contents($url); 3. обрабатываем информацию $bufer = htmlspecialchars(stripslashes($bufer)); 4. записываем в БД $sql=mysql_query("insert into search (url, content) values ('$url', '$bufer')"); PS необходимо еще будет придумать автоматический обход ссылок по сайту и пункты со 2 по 4 поместить в функцию перехода по ссылкам" Подскажите, существует ли подобный "автоматический обход ссылок" и что он из себя представляет? Если возможно, приведите пример в виде кода. Подскажите, какие существуют альтернативные способы поиска! Только в кодировке я не силен - можно сказать новичок, поэтому прошу приводить коды в качестве примера. Также, буду благодарен любому источнику информации по данному вопросу! Спасибо! |
Я бы советовал смотреть в сторону Яндекс.XML...
|
А я бы посоветовал DataparkSearch Engine и Яndex.Server
|
Здравствуйте
Прошу помочь разобраться в ошибках с поиском. У меня есть БД MySQL с таблицей такой структуры: Код:
CREATE TABLE search (Код:
<form action="search.php" method="post" enctype="multipart/form-data" name="form1" id="form1">Код:
<?php1) При не заполненном поле ввода поиска или при отсутствии искомого в БД, выдается ошибка, как прописано в коде, но код, идущий за пхп-кодом не выполняется. Такое ощущение, что после выполнения операции Код:
exit();2) При следующем поиске (другого искомого слова) результат приписывается к предыдущему, вместо его замены... Выходит, что вместе с последним результатом на страницу выводится все то, что искалось до этого. Помогите найти и устранить ошибки. И еще кое-что. Возможно ли, чтобы при нахождении единственного результата поиска, осуществить переход сразу на страницу, содержащую искомое, без вывода ссылки-посредника (как сделано в этом коде), ведь в БД хранится запись с полем url, где прописан адрес страницы. Заранее спасибо! |
| Часовой пояс GMT +4, время: 05:51. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.