Просмотр файла publs_v1_0/serch.php

Размер файла: 6.33Kb
<?php
if (defined('BASEDIR')) {
	exit (header('Location: /index.php'));
}

$headmod = 'pub';
$textl = 'Публикации';

require_once ('../includes/start.php');
require_once ('../includes/functions.php');
require_once ('../includes/header.php');
include_once ('../themes/header.php');

require_once ("./inc/conf.php");

$act = isset($_GET['act']) ? check($_GET['act']) : 'index' ; 
$start = isset($_GET['start']) ? abs(intval($_GET['start'])) : 0 ; 

/*// Ограничиваем доступ к Библиотеке
if (!$set['mod_lib'] && $rights < 7)
    $error = 'Библиотека закрыта';
elseif ($set['mod_lib'] == 1 && !$user_id)
    $error = 'Доступ в Библиотеку открыт только <a href="../in.php">авторизованным</a> посетителям';
if ($error) {
    require_once ("../incfiles/head.php");
    echo '<div class="rmenu"><p>' . $error . '</p></div>';
    require_once ("../incfiles/end.php");
    exit;
}
*/
require_once ("panel.dat");
echo '<ol class="breadcrumb">';
echo '<li><a href="/index.php?"> <i class="fa fa-home fa-lg text-muted"></i> </a></li>';
echo '<li class=""><a href="index.php?">Публикации</a></li>';
echo '<li class="active"><strong>Поиск</strong></li>';
echo '</ol> ';

switch	($act) {
	default:
		echo 
		'<form action="serch.php?" method="GET">' .
		'<small>Что ищем? </small> <br />' .
		'<input type="hidden" name="act" value="ser"/>' .
		'<input type="text" name="text"/> <br />' .
		'<small>Где ищем? </small> <br />'.
		'<small>В названиях текстов </small>'.
		'<input type="radio" name="wh" value="1" checked="checked"/> <br />'.
		'<small>В названиях категорий </small>'.
		'<input type="radio" name="wh" value="3"/> <br />'.
		'<small>В текстах </small><input type="radio" name="wh" value="2"/> <br />'.
		'<input type="submit" value="Искать"/>'.
		'</form>';
	break;

	case "ser":
		$text = check(mb_strtolower(trim($_GET['text'])));
		$wh = intval($_GET['wh']);
		if ($wh == "1") {
			$co = DB::run() -> querySingle("SELECT COUNT(*) FROM `pub_arts` WHERE `name` LIKE '%$text%' and `type` = 'file' and `moder` = '1'");
			if ($co > 0) {
				$sql = DB::run() -> query("SELECT * FROM `pub_arts` WHERE `name` LIKE '%$text%' and `type` = 'file' and `moder` = '1' LIMIT $start, 20");
				$i = 0;
				while ($res = $sql -> fetch()) {
					echo ($i % 2) ? '<div class="list1">' : '<div class="list2">'; ++$i;
					$cat = DB::run() -> queryFetch("select `name` from `pub_arts` where `id` = '".$res['fid']."' and `type` = 'dir'");
					$cats = $res['fid'] == "0" ? 'Библиотека' :  $cat['name'];
					$ser = preg_replace("/$text/is", '<span class="red">'.$text.'</span>', $res['name']);
					echo $cats.' &gt;&gt; <a href="read.php?id='.$res['id'].'">'.$ser.'</a>';
					echo '</div>';
				}
				if ($start+20 > $co) $dmes = $co; else $dmes = $start+20;
				if ($start > $co) exit('Ошибка');
				echo 'Результатов поиска: '.$start.'-'.$dmes.' из '.$co.'<br />';
				if ($start>0) {
					echo '<small> <a href="?act=ser&amp;text='.$text.'&amp;start='.($start-20).'&amp;wh='.$wh.'">Пред.</a></small>';
				}
				if ($start + 20 < $co) {
					echo '<small> <a href="?act=ser&amp;text='.$text.'&amp;start='.($start+20).'&amp;wh='.$wh.'">След.</a> </small>';
				}
			} else {
				echo 'По запросу не чего не найдено!!!<br/>';
			}
		}

		if ($wh == "2") {
			$co = DB::run() -> querySingle("SELECT COUNT(*) FROM `pub_arts` WHERE `text` LIKE '%$text%' and `type` = 'file' and `moder` = '1'");
			if ($co > 0) {
				$sql = DB::run() -> query("SELECT * FROM `pub_arts` WHERE `text` LIKE '%$text%' and `type` = 'file' and `moder` = '1' LIMIT $start, 20");
				$i = 0;
				while ($res = $sql -> fetch()) {
					$cat = DB::run() -> queryFetch("select `name` from `pub_arts` where `id` = '".$res['fid']."' and `type` = 'dir'");
					$cats = $res['fid'] == "0" ? 'Библиотека' :  $cat['name'];
					$ser = preg_replace("/$text/is", '<span class="red">'.$text.'</span>', $res['name']);
					echo ($i % 2) ? '<div class="list1">' : '<div class="list2">'; ++$i;
					echo $cats.' &gt;&gt; <a href="read.php?id='.$res['id'].'">'.$ser.'</a>';
					echo '</div>';
				}
				if ($start+20 > $co) $dmes = $co; else $dmes = $start+20;
				if ($start > $co) exit('Ошибка');
				echo 'Результатов поиска: '.$start.'-'.$dmes.' из '.$co.'<br />';
				if ($start>0) {
					echo '<small> <a href="?act=ser&amp;text='.$text.'&amp;start='.($start-20).'&amp;wh='.$wh.'">Пред.</a></small>';
				}
				if ($start + 20 < $co) {
					echo '<small> <a href="?act=ser&amp;text='.$text.'&amp;start='.($start+20).'&amp;wh='.$wh.'">След.</a> </small>';
				}
			} else {
				echo 'По запросу не чего не найдено!!! <br />';
			}
		}

		if ($wh == "3") {
			$co = DB::run() -> querySingle("SELECT COUNT(*) FROM `pub_arts` WHERE `name` LIKE '%$text%' and `type` = 'dir'");
			if ($co > 0) {
				$sql = DB::run() -> query("SELECT * FROM `pub_arts` WHERE `name` LIKE '%$text%' and `type` = 'dir' LIMIT $start, 20");
				$i = 0;
				while ($res = $sql -> fetch()) {
					$ser = preg_replace("/$text/is", '<span class="red">'.$text.'</span>', $res['name']);
					echo ($i % 2) ? '<div class="list1">' : '<div class="list2">'; ++$i;
					echo '<ul>';
					echo '<li><a href="index.php?id='.$res['id'].'">'.$ser.'</a></li>';
					echo '</ul>';
					echo '</div>';
				}
				if ($start+20 > $co) $dmes = $co; else $dmes = $start+20;
				if ($start > $co) exit('Ошибка');
				echo 'Результатов поиска: '.$start.'-'.$dmes.' из '.$co.'<br />';
				if ($start>0) {
					echo '<small> <a href="?act=ser&amp;text='.$text.'&amp;start='.($start-20).'&amp;wh='.$wh.'">Пред.</a></small>';
				}
				if ($start + 20 < $co) {
					echo '<small> <a href="?act=ser&amp;text='.$text.'&amp;start='.($start+20).'&amp;wh='.$wh.'">След.</a> </small>';
				}
			} else {
				echo 'По запросу не чего не найдено!!! <br />';
			}
		}
	break;
}

echo '<div class="breadcrumb"> '.($co = isset($co) ? 'Всего: '.$co : '<br />').' </div>';
echo '<a href="index.php?">Публикации</a> <br />';
include_once ('../themes/footer.php');
?>