<?php
#-----------------------------------------------------#
# ********* WAP-MOTORS ********* #
# Made by : VANTUZ #
# E-mail : [email protected] #
# Site : http://pizdec.ru #
# WAP-Site : http://visavi.net #
# ICQ : 36-44-66 #
# Вы не имеете право вносить изменения в код скрипта #
#-----------------------------------------------------#
require_once"../template/start.php";
require_once"../template/regglobals.php";
require_once"../template/config.php";
require_once"../template/functions.php";
require_once"../template/maincore.php";
require_once"../template/antidos.php";
require_once"../template/cookies.php";
require_once"../template/gzip.php";
require_once"../template/header.php";
require_once"../template/referer.php";
include_once"../themes/$config_themes/index.php";
$text = @file("../local/profil/$log.prof");
if ($text!=""){
$udata = explode(":||:",$text[0]);
$provlog=trim($udata[0]);
$provpar=trim($udata[1]);
$privat=trim($udata[10]);}
// все события в файле tools.php выполняются ТОЛЬКО при наличии переменной $event
if(isset($_GET['event'])) {
if ($_GET['event']=="find") { // ПОИСК объявления
$minfindme="3"; // минимальное кол-во символов, в поисковой фразе
$ftype=$_POST['ftype'];
$gdefinder=$_POST['gdefinder'];
// Разбиваем $findme на слова
$findme=$_POST['findme'];
$findme=stripslashes($findme);
$findmeword=explode(" ",$findme);
$wordsitogo=count($findmeword);
$findme=trim($findme); // Вырезает ПРОБЕЛьные символы
if ($findme == "" || strlen($findme) < $minfindme) {
echo'Ваш запрос пуст, или менее '.$minfindme.' символов!';
echo'<br><a href="search.php?'.SID.'">Назад</a>';
echo'<br><a href="index.php?'.SID.'">В объявления</a>';
echo'<br><a href="../index.php?'.SID.'">На главную</a>';
require_once"../template/foot.php";
exit;}
// Открываем файл с темами формума и запоминаем имена файлов с сообщениями
$lines = file("../local/databoard/database.dat");
$itogo=count($lines); $i=$itogo;
// первый цикл - подсчёт кол-во тем
$number="0";
do {$i--; $dt=explode("|", $lines[$i]);
$forumsid[$i]=$dt[3];
} while($i > "0");
$ii=count($forumsid);
// второй цикл - проверка последовательная сообщений в теме
do {$ii--;
$id=$forumsid[$ii];
if (is_file("../local/databoard/$id.dat")) {$file=file("../local/databoard/$id.dat");}
if ((is_file("../local/databoard/$id.dat")) && (sizeof($file)>"0"))
{
$iiitogo=count($file); $iii=$iiitogo; // $iii-кол-во сообщений в теме $id.dat";
$linesid = file("../local/databoard/$id.dat");
do {$iii--;
$dt = explode("|", $linesid[$iii]);
if ($gdefinder=="0") {$msgmass=array($dt[2],$dt[0],$dt[4]); $gi="3"; $add='ях <b>Автор, Текст, Заголовок</b> ';}
if ($gdefinder=="1") {$msgmass=array($dt[4]); $gi="1"; $add='е <b>Текст</b> ';}
if ($gdefinder=="2") {$msgmass=array($dt[0],$dt[4]); $gi="2"; $add='ях <b>Текст и Заголовок</b> ';}
if ($gdefinder=="3") {$msgmass=array($dt[2]); $gi="1"; $add='е <b>Автор</b> ';}
if ($gdefinder=="4") {$msgmass=array($dt[0]); $gi="1"; $add='е <b>Заголовок</b> ';}
// Цикл по местам поиска (0,1,2,3,4)
do {$gi--;
$msg=$dt[4];
$msdat=$msgmass[$gi];
$stroka="0"; $wi=$wordsitogo;
// ЦИКЛ по КАЖДОМУ слову запроса !
do {$wi--;
// БЛОК УСЛОВИЙ ПОИСКА
if ($ftype=="2")
{
if (stristr($msdat,$findme)) // ПОИСК по "ВСЕЙ ФРАЗЕ ЦЕЛИКОМ" БЕЗ учёта регистра
{
$stroka++;
$msg=eregi_replace($findme," <b><u>$findme</u></b> ",$msg);
}
}
else {
$str1=strtolower($msdat);
$str2=strtolower($findmeword[$wi]);
if ($str2!="" and strlen($str2) >= $minfindme)
{
if (stristr($str1,$str2)) // ПОИСК БЕЗ учёта регистра при равных прочих условиях
{
$stroka++;
$msg=eregi_replace($findmeword[$wi]," <b><u>$findmeword[$wi]</u></b> ",$msg);
}
}
}
} while($wi > "0"); // конец ЦИКЛа по КАЖДОМУ слову запроса
// Подготавливаем результирующее сообщение, и если результат соответствует условиям - выводим его
if ($ftype=="0") { if ($stroka==$wordsitogo) {$echoflag="1";} }
if ($ftype=="1") { if ($stroka>"0") {$echoflag="1";} }
if ($ftype=="2") { if ($stroka==$wordsitogo) {$echoflag="1";} }
if (!isset($echoflag)) {$echoflag="0";}
if ($echoflag=="1")
{$msg=str_replace("<br>", " ", $msg); // заменяем в сообщении <br> на пару пробелов
if (strlen($msg)>250)
{
$ma=strpos($msg,"<b>"); if ($ma > 150) {$ma=$ma-150;} else {$ma=0;}
$mb=strrpos($msg,">b/<"); if (($mb+150) > strlen($msg)) {$mb=strlen($msg);} else {$mb=$mb+150;}
$msgtowrite="..."; $msgtowrite.=substr($msg,$ma,$mb); $msgtowrite.="...";
}
else {$msgtowrite=$msg;}
if (!isset($m)) {
echo '<br>По запросу <b>'.$findme.'</b> в пол'.$add.' найдено:<br><br>';
$m="1"; }
// Открываем файл и ищем в какой рубрике находится найденное сообщение
$p=$itogo; do {$p--; $dtp=explode("|", $lines[$p]); if ($dtp[3]==$id) {$tid=$p;} } while($p > "0");
$msgnumber=$iiitogo-$iii;
echo '</div><div class=b><img src="../images/img/forums.gif" alt=""> <b>'.$dt[0].'</b></div><div>';
echo 'Текст: <a href="index.php?tid='.$tid.'&id='.$id.'&'.SID.'">'.$msgtowrite.'</a><br>';
echo 'Разместил: <a href="../pages/anketa.php?uz='.$dt[2].'&'.SID.'">'.$dt[2].'</a><br>';
echo 'Е-mail: '.$dt[3].'<br>';
echo 'Дата: '.$dt[5].'<br>';
$echoflag="0";
}
} while($gi > "0"); // конец ЦИКЛа по МЕСТУ поиска
} while($iii >= "1");
} // if ((is_file("$id.dat")) && (sizeof("$id.dat")>0))
} while($ii > "0");
if (!isset($m)) {echo 'По вашему запросу ничего не найдено.';
echo'<br><a href="search.php?'.SID.'">Назад</a>';
}
}
} // if isset($event)
else {
if($config_themes!=="wml"){
echo'<br><form action="search.php?event=find&'.SID.'" method="post">';
echo'Запрос: <br><input type="text" name="findme" /><br>';
echo'Тип: <br><select name="ftype"><br>';
echo'<option value="0">И</option>';
echo'<option value="1" selected>ИЛИ</option>';
echo'<option value="2">Вся фраза целиком</option>';
echo'</select><br>';
echo'Где искать: <br>';
echo'<select name="gdefinder">';
echo'<option value="1" selected>В тексте</option>';
echo'<option value="4">В заголовке</option>';
echo'<option value="3">Имени автора</option>';
echo'<option value="2">В тексте и заголовке</option>';
echo'<option value="0">Везде</option></select><br><br>';
echo'<input type="submit" value="Поиск" /></form><hr>';
}else{
echo'<br>Запрос:<br>';
echo'<input name="findme" /><br>';
echo'Тип:<br> <select name="ftype">';
echo '<option value="1">ИЛИ</option>';
echo '<option value="0">И</option>';
echo '<option value="2">Вся фраза целиком</option></select><br>';
echo'Где искать: <br>';
echo'<select name="gdefinder">';
echo'<option value="1">В тексте</option>';
echo'<option value="4">В заголовке</option>';
echo'<option value="3">Имени автора</option>';
echo'<option value="2">В тексте и заголовке</option>';
echo'<option value="0">Везде</option></select><br>';
echo'<anchor>Поиск';
echo'<go href="search.php?event=find&'.SID.'" method="post">';
echo'<postfield name="findme" value="$(findme)"/>';
echo'<postfield name="gdefinder" value="$(gdefinder)"/>';
echo'<postfield name="ftype" value="$(ftype)"/>';
echo'</go></anchor><br>--------------------<br>';
}
echo '<br>Язык запросов:<br>
И - должны присутствовать оба слова;<br>
ИЛИ - есть ХОТЯ БЫ одно из слов;<br>
Вся фраза целиком - в искомом документе ищите фразу на 100% соответствующую вашему запросу;<br>
Где искать: <br>
В тексте - поиск ведётся только в тексте сообщений<br>
В заголовке - поиск ведётся в заголовке объявления<br>
Имени автора - поиск по имени подавшего объявления<br>
В тексте и заголовке - поиск по имени подавшего объявления, и заголовке объявления<br>
Везде - поиск ведётся в полях Имя, Заголовок, Тексте каждого объявления<br>
Скрипт ищет все данные, которые начинаются с введенной вами строки. Например, при запросе "скрипт" будут найдены слова "скрипт", "скриптик", "скриптом"; и многие другие.<br>';
}
echo'<br><a href="index.php?'.SID.'">В объявления</a>';
echo'<br><a href="../index.php?'.SID.'">На главную</a>';
include_once"../themes/$config_themes/foot.php";
?>