Размер файла: 3.3Kb
- <?
- 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');
- $form->input2(false,'search','text',false,'placeholder="Тема..."',false,false);
- $form->submit('Искать','submit');
- $form->display();
- echo '</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;
- ?>