Раздел «Скрипты»
Раздел «Дизайн»
Форма входа
Чат сайта
ОК

Функции

Контакты
Наши флудеры
Ник: [npu3pak]
Сообщений: 28
Директор
[npu3pak]
Ник: FOZ)JacK
Сообщений: 6
Проверенные
FOZ)JacK
Ник: Rastaman228
Сообщений: 0
Пользователи
Rastaman228
Реклама
Купить ссылку здесь


Кто на сайте
Онлайн всего: 2
Гостей: 2
Пользователей: 0
Пользователи
Гости
пользователи отсутствуют
PHP скрипты Фильтрация результатов поиска 


mb
В этом примере демонстрируется как с помощью php-скрипта отфильтровать результаты поиска по сайту по букве алфавита. Скрипт ожидает ввода поисковой фразы, после нажатия кнопки "Поиск" выполняет POST запрос на скрипт поиска по сайту (в данном примере поиск проходит по сайту forum.ucoz.ru), затем структурирует полученный результат (ответ), фильтрует его и выводит на страницу. Исходный код данного примера приведен ниже.
В шаблоне страницы:

Code
<div align="center">   
     

   <b>Данный пример демонстрирует использование скрипта для фильтрации результатов поиска по сайту по букве алфавита</b>   
   </p>   
</div>   
<hr>

PHP скрипт примера:

Code
<if ((count($_POST)>0) && $_POST['q'])   
{   
   $___notjson=1;   
   $ch = curl_init();   
   curl_setopt_array($ch, array(CURLOPT_URL => "http://forum.ucoz.ru/search/?q=".$_POST['q'],   
   CURLOPT_RETURNTRANSFER => TRUE,   
   CURLOPT_CONNECTTIMEOUT => 5,   
   CURLOPT_TIMEOUT => 5,   
   CURLOPT_USERAGENT => "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)")   
   );   
   $data = curl_exec($ch);   
   curl_close($ch);   
   preg_match("/]*?\s*class=[\'\"]?\s*eBlock\s*[\'\"]?/si",$data,$matches,PREG_OFFSET_CAPTURE);   
   $data=substr($data,$matches[0][1]);   
   $matches="none";   
   preg_match_all("/]*?\s*class=[\'\"]?\s*eTitle\s*[\'\"]?.*?\s*<\/div>/i",$data,$matches);   
   $mydata=array();   
   $myalph=array();   
   foreach ($matches[0] as $key => $value)   
   {   
   $mydata[$key]=array();   
   $mydata[$key][0]=$value;   
   preg_match("/>\s*(\p{L})[^<]+ if (!isset($matches0[1])) next;   
   $matches0[1]=mb_strtoupper($matches0[1],'UTF-8');   
   if (!isset($myalph[$matches0[1]])) $myalph[$matches0[1]]=array();   
   array_push($myalph[$matches0[1]],$key);   
   }   
   preg_match_all("/]*?\s*class=[\'\"]?\s*eMessage\s*[\'\"]?.*?\s*<\/div>/i",$data,$matches);   
   foreach ($matches[0] as $key => $value) $mydata[$key][1]=$value;   
   preg_match_all("/]*?\s*class=[\'\"]?\s*eDetails\s*[\'\"]?.*?\s*<\/div>/si",$data,$matches);   
   foreach ($matches[0] as $key => $value) $mydata[$key][2]=$value;   
   $html="   

";   
   foreach ($myalph as $key => $value) $html.=" ";   
   $html.="   

     
     
";   
   if (!$_POST['letter']) foreach ($mydata as $value) $html.="";   
   else foreach ($myalph[$_POST['letter']] as $value) $html.="";   
   $html.="   
".$value[0].$value[1].$value[2]."   
     
".$mydata[$value][0].$mydata[$value][1].$mydata[$value][2]."   
     

";   
   $html=str_replace("\n"," ",$html);   
   $html=str_replace("'","'",$html);   
   echo "$('#sortsearch').html('$html')";   
   return;   
}   
?>   

<div id='sortsearch'></div>   
<form action="/php/example005/filtersearchbyalph.php" method="post" onsubmit="_uPostForm(this,{dataType:'script'});return false;" onerror="alert('Error');">   

Поисковый запрос: </p><input type="text" name="q" />   

<input type="submit" value="Поиск"></p>   
</form>

Примечание
php-скрипт обрабатывает столько материалов, сколько возвращает поисковый скрипт сайта. Если вы хотите, чтобы скрипт работал с большим количеством результатов, чем те, которые возвращаются по умолчанию, измените соответствующую настройку в панеле управления сайтом.
Автор: Не указан
Источник: Не указан
Вы сейчас просматриваете файл Фильтрация результатов поиска. Данный файл находится в категории PHP скрипты. Чтобы увидеть другие файлы из этой категории, перейдите по этой ссылке: PHP скрипты. Для того чтобы скачать Фильтрация результатов поиска нажмите на кнопку СКАЧАТЬ выше. Надеемся вам понравился файл Фильтрация результатов поиска и пригодился. По всем вопросам обращайтесь на форуме или к администарции.

PHP скрипты

679 просмотров
автор: [npu3pak]
дата: 22.01.2012, 11:01
Вы не можете добавлять комментарии

При копировании материалов → указывайте ссылку на источник!
Script-uCoz © 2011-2012 Все права защищены. Хостинг от uCoz
Счётчики
Сегодня нас посетило
Seo анализ сайта
Показано 2 последних комментария из 16.
ойой !сначала получилось все красиво .как у вас .а теперь  пять плохо некрасиво как исправить? дальше »
спасибо вам .долго искала подробную инструкцию как изменить вид фотоальбома .у вас нашла только у ме дальше »
Мини-статистика
Всего зарегистрировано: 74
Постов на форуме: 34
Тем на форуме: 33