Поиск по сайту на php форма, обработчик

Уважаемые программисты. Я в web программировании абсолютный чайник. Но мне срочно понадобилось организовать поиск по сайту. Надо было сделать поиск заключения исследования по его уникальному коду. База здесь же. Воспользовался примером на страничке https://code-live.ru/post/custom-search-for-site-with-php-and-mysql/ вроде бы все сделал, но в ответ тишина. После нажатия кнопки поиска выходит чистая страница. Помоги чайнику, пожалуйста.

Форма поиска

<p>Введите код исследования в поле поиска и нажмите Найти</p>
<form action="search.php" method="post"> <input name="query" type="search" /> <button>Найти</button> </form>

А вот здесь search.php

<?php 
define('DB_HOST', 'localhost');
define('DB_USER', 'mrt');
define('DB_PASS', '06112013');
define('DB_NAME', 'cortex_mrt');

if (!mysql_connect(DB_HOST, DB_USER, DB_PASS)) {
    exit('Cannot connect to server');
}
if (!mysql_select_db(DB_NAME)) {
    exit('Cannot select database');
}

mysql_query('SET NAMES utf8');

function search ($query) 
{ 
    $query = trim($query); 
    $query = mysql_real_escape_string($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 `kodissledovaniya`, `data`, `zaklyucheniye`, `pacient`, `vrach`
                  FROM `zaklyucheniya` WHERE `kodissledovaniya` LIKE '%$query%'";

            $result = mysql_query($q);

            if (mysql_affected_rows() > 0) { 
                $row = mysql_fetch_assoc($result); 
                $num = mysql_num_rows($result);

                $text = '<p>По запросу <b>'.$query.'</b> найдено совпадений: '.$num.'</p>';

            } else {
                $text = '<p>По вашему запросу ничего не найдено.</p>';
            }
        } 
    } else {
        $text = '<p>Задан пустой поисковый запрос.</p>';
    }

    return $text; 
} 
?>

<?php 
if (!empty($_POST['query'])) { 
    $search_result = search ($_POST['query']); 
    echo $search_result; 
}
?>

Вывод ошибок (error_reporting) включен? Включите вывод ошибок и покажите результат выполнения скрипта.

Выведите через var_dump, что находится в массиве $_POST при выполнении запроса и что возвращает функция search.

Внимание! Это довольно старый топик, посты в него не попадут в новые, и их никто не увидит. Пишите пост, если хотите просто дополнить топик, а чтобы задать новый вопрос — начните новый.

Ответить

Вы можете использовать разметку markdown для оформления комментариев и постов. Используйте функцию предпросмотра для проверки корректности разметки.

Пожалуйста, оформляйте исходный код в соответствии с правилами разметки. Для того, чтобы вставить код в комментарий, скопируйте его в текстовое поле ниже, после чего выделите то, что скопировали и нажмите кнопку «код» в панели инструментов. Иначе ваш код может принять нечитаемый вид.

Либо производите оформление кода вручную, следующим образом:

``` #include <iostream> using namespace std; int main() { // ... } ```

Предпросмотр сообщения

Ваше сообщение пусто.