Размер файла: 3.38Kb
<?php
if(!defined('SHCMS_ENGINE')) {
die( "Неправильное действие" );
}
switch($act):
default:
echo '<div class="mainname">'.Lang::__('Искать тему').'</div>';
echo '<div class="mainpost">';
$form = new form('?do=search&act=search','','','class="navbar-form pull-left"');
$form->input2(false,'search','text',false,' placeholder="Введите тему.."',false,false);
$form->submit('Искать','submit',true,'btn');
$form->display();
echo '<br/><br/> </div>';
//Переадресация на пред. страницу
echo engine::home(array('Назад','index.php'));
break;
case'search':
function search($query) {
global $db;
$query = trim($query);
$query = $db->safesql($query);
$query = htmlspecialchars($query);
if (!empty($query)) {
if (strlen($query) < 3) {
$text = '<p>Слишком короткий поисковый запрос.</p>';
} else if (strlen($query) > 128) {
$text = '<p>Слишком длинный поисковый запрос.</p>';
} else {
$q = "SELECT `id`,`name` FROM `forum_topics` WHERE `name` LIKE '%$query%'";
$result = $db->query($q);
if ($db->num_rows($result) > 0) {
$row = $db->get_array($result);
$num = $db->num_rows($result);
$text = '<div class="mainname">По запросу <b>'.$query.'</b> найдено совпадений: '.$num.'</div>';
$text .= '<div class="mainpost">';
do {
// Делаем запрос, получающий ссылки на статьи
$q1 = "SELECT * FROM `forum_topics` WHERE `id` = '$row[id]'";
$result1 = $db->query($q1);
if ($db->num_rows() > 0) {
$row1 = $db->get_array($result1);
}
$text .= '<div class="posts_gl">';
$text .= '<table cellspacing="0" callpadding="0" width="100%"><tr>';
$text .= '<td class="icons"><img src="/engine/template/icons/fol_txt.png"></td>';
$text .= '<td class="name" colspan="10"><b>Тема: <a href="post.php?id='.$row1['id'].'">'.engine::ucfirst(engine::search_text($query,$row1['name'])).'</a></b></td>';
$text .= '</tr><tr><td class="content" colspan="10">'.engine::input_text($row1['text']).'</td></tr></table>';
$text .= '</div>';
} while ($row = $db->get_array($result));
} else {
$text = engine::error('По вашему запросу ничего не найдено.');
}
}
} else {
$text = engine::error('Задан пустой поисковый запрос.');
}
$text .= engine::home(array('Назад','?do=search'));
$text .= '</div>';
return $text;
}
if (!empty($_POST['search'])) {
$search_result = search ($_POST['search']);
echo $search_result;
}else {
echo engine::error('Введите название файла в поиске');
}
break;
endswitch;
?>