Помощь в написании студенческих работ
Антистрессовый сервис

Проектирование WEB-портала на примере ГКП «Костанайская городская детская больница»

ДипломнаяПомощь в написанииУзнать стоимостьмоей работы

Статус непосредственно самой записи на приём, который может состоять из: открыта, завершена, платный приём. Если статус записи имеет состояние (завершена или платный приём), то талоны на запись к указанному специалисту не отображаются. В противном случае статус записи имеет состояние (открыта) и, следовательно, талоны отображаются в виде упорядоченного списка по датам приёма, начиная с ближайшей… Читать ещё >

Проектирование WEB-портала на примере ГКП «Костанайская городская детская больница» (реферат, курсовая, диплом, контрольная)

Министерство образования и науки Республики Казахстан Костанайский государственный университет им. А. Байтурсынова ДИПЛОМНАЯ РАБОТА на тему: «Проектирование WEB-портала на примере ГКП «Костанайская городская детская больница»

по специальности 5В60 200 — «Информатика»

Выполнил Д. Рюмин Научный руководитель А. Бегалин Костанай, 2014

  • Введение
  • 1. Техническое задание
    • 1.1 Основания для разработки
    • 1.2 Назначение и применение разработки
    • 1.3 Требования к функциональным характеристикам
    • 1.4 Требования к программному и аппаратному обеспечению
      • 1.4.1 Требования к аппаратному обеспечению
      • 1.4.2 Требования к программному обеспечению
    • 1.5 Средства разработки портала
  • 2. Описание программы
    • 2.1 Структура портала
    • 2.2 Описание программных модулей
    • 2.3 Описание подключаемых файлов
  • 3. Руководство пользователя
    • 3.1 Запуск портала
    • 3.2 Меню больничного портала
      • 3.2.1 Электронная регистратура
      • 3.2.2 Выданные талоны
      • 3.2.4 Расписание поликлиник
      • 3.2.5 Дежурные специалисты
      • 3.2.6 Задать вопрос в режиме онлайн
    • 3.3 Поиск талонов
    • 3.4 Информационные разделы
      • 3.4.1 Статистика, ответы на часто задаваемые вопросы
      • 3.4.2 Контакты, список отказов к специалистам
      • 3.4.3 Нормативно — правовые акты
      • 3.4.4 Информация по подготовке к обследованиям
      • 3.4.5 Наша жизнь, полезная информация
    • 3.5 Подписка на рассылку уведомлений
    • 3.6 Информация об администрации больницы
    • 3.7 Административная панель
      • 3.7.1 Административный вход
      • 3.7.2 Вход для регистраторов
  • Заключение
  • Список использованных источников

На сегодняшний день наличие информации об организации в сети Internet является неотъемлемой частью деятельности организации. Это позволяет расширить круг интересующихся пользователей о деятельности больницы в сети, чему способствует World Wide Web, как часть информационных технологий.

Актуальность данной дипломной работы заключается в том, что автоматизация организационных процессов в сфере медицины с помощью IT-ресурсов, позволяет оптимизировать и унифицировать деятельность организаций здравоохранения.

Цель дипломной работы — создание WEB-портала на примере Государственного Коммунального Предприятия «Костанайская городская детская больница» с использованием технологии Asynchronous JavaScript and eXtensible Markup Language и библиотеки jQuery. На данном портале пользователи могут получить всю необходимую информацию от правильной подготовки к обследованию до расписания приема специалистов детской больницы и произвести запись на прием «онлайн».

При разработке портала требовалось решить следующие задачи:

— Разработать наиболее упрошенную онлайн запись;

— Составить методическое руководство по разработке и использованию портала;

— Реализовать возможность выкладывания свободных талонов, подтверждение ожидаемых талонов;

— Возможность предоставления онлайн-консультаций;

— Оповещение о новостях больницы, о новой доступной записи;

— Удобность, нетребовательность к ресурсам.

Объектом исследования является ГКП «Костанайская городская детская больница», предметом — портал записи на приём к специалистам узких специальностей.

Текущая версия портала была разработана по заказу Управления здравоохранения акимата Костанайской области с последующем внедрением в его интернет-ресурсы.

Новизна дипломной работы — заключается в использовании технологии AJAX, которая позволяет посылать асинхронные запросы к серверу без перезагрузки портала.

Практическая значимость дипломной работы заключается в оптимизации работы регистратуры, а также исключения очередей у специалистов, оказывающих медицинские услуги.

1. Техническое задание

1.1 Основания для разработки

Основаниями для разработки проекта ГКП «Костанайская городская детская больница» послужили следующие факторы:

? Отсутствие больничного портала на запись детей к специалистам;

? Отсутствие медицинских консультаций в режиме реального времени;

? Отсутствие доступного электронного архива посещений специалистов, так как имеются только защищённые порталы под эгидой EISZ (Единой Информационной Системы Здравоохранения) в частности http://bg.eisz.kz/ (Портал Бюро Госпитализации), а также http://rpn.eisz.kz/ (Регистр прикреплённого населения);

? Отсутствие получения необходимой информации перед функциональным диагностическим обследованием;

? Необходимость в получение информации перед сдачей анализов в лабораторию;

? Отсутствие новостной рассылки.

В связи со всеми вышеперечисленными причинами, разработан WEB-портал, в котором, по запросам посетителей, регулярно добавляется та или иная информация.

Первичной задачей данной дипломной работы является предоставление качественной и необходимой информации об оказании больничных услуг, осуществление упрощенной записи к специалистам.

1.2 Назначение и применение разработки

WEB-портал ГКП «Костанайская городская детская больница» рассчитан для тех пользователей, которые нуждаются в проверенной медицинской информации, кому необходим наиболее правдивый результат. Для детей часто болеющих, нуждающихся в необходимом оздоровлении. Портал позволяет отслеживать опубликования новой информации.

Применение данного Web портала позволяет достаточно быстро записать на прием к нужному врачу, получить ответ на интересующий вопрос квалифицированного специалиста, а также на портале имеется возможность просмотреть выданные талоны, которые недоступны для просмотра на государственном портале http://app.eisz.kz.

В результате появления портала наблюдались такие улучшения оказания услуг как:

? Обслуживание гораздо большего количества больных детей, как по телефону, так и электронной записи;

? Разгрузка телефонной линии, увеличение качество предоставляемой информации;

? Просмотр категорий специалистов;

? Отправка статистических данных напрямую в РИАЦ (Региональный информационно-аналитический центр).

1.3 Требования к функциональным характеристикам

При разработке портала к нему были предъявлены следующие требования:

? Пользователь должен доступно и своевременно получать необходимую ему информацию;

? Автоматизированная система поиска талонов, которая позволяет находить талоны, независимо от их статуса. Поиск должен работать корректно;

? Синхронизация статусов талонов, без перезагрузки портала;

? Надёжная защита от некорректного ввода данных;

? Доступ к учетным записям в базе данных должен быть доступным для определенных пользователей различного статуса;

? Возможность пользователя как записаться на прием, так и самовольно отменить прием;

? Архитектура базы данных должна состоять из таблиц связанных между собой.

1.4 Требования к программному и аппаратному обеспечению

1.4.1 Требования к аппаратному обеспечению

Для работы с WEB-порталом требуются компьютеры с характеристиками, приведенными в таблицах 1, 2.

Таблица 1 Минимальные аппаратные характеристики рабочей станции

Рабочая станция

Процессор

1,2 GHz

ОЗУ

512 MB

Жесткий диск

30 GB

Сетевой адаптер

Ethernet 100 Mbit/s

Таблица 2 Рекомендуемые аппаратные характеристики рабочей станции

Рабочая станция

Процессор

3,0 GHz

ОЗУ

2048 MB

Жесткий диск

60 GB

Сетевой адаптер

Ethernet 100 Mbit/s

1.4.2 Требования к программному обеспечению

Для работы с WEB-порталом требуется наличие установленного программного обеспечения, приведенного в таблицах 3, 4.

Таблица 3 Минимальные характеристики программного обеспечения

Рабочая станция

Браузер

Firefox 12.0+

Google Chrome 5.0+

Opera 12.0+

Таблица 4 Рекомендуемые характеристики программного обеспечения

Рабочая станция

Браузер

Firefox 24.0+

Google Chrome 30.0+

Opera 15.0+

Internet Explorer 11.0+

1.5 Средства разработки портала

Основным инструментом создания WEB-портала ГКП «Костанайская городская детская больница» является распространённый язык программирования PHP. Достоинствами данного инструмента являются: бесплатная установка, внедряемость в HTML, взаимодействие с клиентскими языками и библиотеками, поддержка всех современных WEB-серверов, а также Баз Данных, которые в свою очередь состоят из отдельных расширений. Данные расширения вынесены из ядра в конфигурационный файл — это способствует простоте подключения или отключения и разгрузке ядра.

Дополнительными инструментами создания WEB-портала являются Java-Script [6], AJAX [2], библиотека jQuery [1], MySQL. Java-Script и библиотека jQuery, предназначены для обработки данных непосредственно на клиентских машинах пользователей, с помощью которых осуществляется передача данных в базу MySQL через асинхронную технологию AJAX.

Непосредственно само программирование осуществляется в редакторе Sublime Text 3. Редактор постоянно обновляется, что служит к его усовершенствованию.

Данный редактор имеет минималистичный дизайн, но в тоже время включает в себя подсветку синтаксиса, полноэкранный режим, мини карту, мульти панель, автоматическое сохранение (даже при выходе из системы).

Однако главным удобством данного редактора является его умение работать с текстом, который состоит из кода и комментарий. Любой фрагмент текста можно сохранить в сниппет с присвоением псевдонима предварительно проверив на орфографические ошибки, после чего, обращение происходит через псевдоним, что в свою очередь упрощает работу с одним и тем же текстом. Если вдруг разработчик не найдёт, тот функционал в котором он нуждается, то имеется возможность расширения собственными плагинами.

2. Описание программы

2.1 Структура портала

WEB — портал КГП «Костанайская городская детская больница» состоит из четырнадцати основных файлов, четыре из которых имеют семь взаимосвязанных файлов, в соответствии со схемой 1.

Схема 1. Структура портала

2.2 Описание программных модулей

Модуль «Электронная регистратура» — это отдельный файл, который обрабатывается интерпретатором PHP и служит роутером для отображения персональных страниц специалистов с возможностью записи на приём.

Модуль состоит из подключаемых файлов и функции роутера:

include ('bd.php'); /* Соединение с БД */

? include ('404_error.php'); /* Проверка модуля на ошибки */

? include ('components/shapka.php'); /* Заголовочная часть */

? include ('components/line.php'); /* Разделительная линия */

? include ('components/menu.php'); /* Меню */

? include ('components/line.php'); /* Разделительная линия */

? include ('components/search.php'); /* Поиск талонов */

? include ('components/line.php'); /* Разделительная линия */

$id_doctor = $row['doc_id']; /* Присвоить переменной значение идентификатора доктора */

$id_doctor_time = mysql_query («SELECT id_doctor FROM time WHERE id_doctor='$id_doctor'»); /* Выбрать строки из таблицы времени где идентификатор доктора равен $id_doctor */

function pravblokLblag () {/* Формирование текущий специалистов, которые относятся к текущему модулю */

$(«#pravblokLblag»).load («two_load.php»); /* Парсинг */

}

setInterval (pravblokLblag, 10 000); /* Интервал парсинга */

pravblokLblag (); /* Запуск функции */

/* Парсинг талонов специалистов */

$result4 = mysql_query («SELECT * FROM date_otpravka_uved WHERE DATE_FORMAT (date_tek, '%d.%m.%Y')=DATE_FORMAT (now (), '%d.%m.%Y')»); /* Выбрать все талоны специалистов */

if (mysql_num_rows ($result4) == 0) { /* Если в выборке NULL */

$result3 = mysql_query («INSERT INTO date_otpravka_uved (date_tek) VALUES (NOW ())»); /* Вставить текущую дату, для работы парсинга на следующий день в указанное время */

}

if (mysql_num_rows ($result4) > 0) { /* Если в выборке не NULL */

$result5 = mysql_query («SELECT * FROM date_otpravka_uved WHERE DATE_FORMAT (date_tek, '%d.%m.%Y')=DATE_FORMAT (now (), '%d.%m.%Y')»);

$query_array4 = mysql_fetch_array ($result5); /* Выбрать талоны */

}

$query = mysql_query («SELECT *, DATE_FORMAT (talon_doctor.date_talon, '%W %e %M') as date_talon, DATE_FORMAT (talon_doctor.date_talon, '%H:%i') as date_talon_two FROM talon_doctor, doctor, dlpodrazdeleniya, special WHERE talon_status=5 AND talon_doctor.id_doctor=doctor.id_doctor AND doctor. id_vihod=dlpodrazdeleniya.id_vihod AND doctor. special=special.special»); /* Выбрать всех специалистов */

if (mysql_num_rows ($query) == 0) { /* Если в выборке NULL */ }

if (mysql_num_rows ($query) > 0) { /* Если в выборке не NULL */

$query_array = mysql_fetch_array ($query); /* Массив данных */

if (date ('" d.m.Y H: i:s') > date ('" d.m.Y 18:00:00')) { /* Если текущее время больше 18 часов вечера */

$a = $query_array4['int_date']; /* Временная метка */

if ($a == 0) { /* Если метка больше 0 */

$request2 = mysql_query («UPDATE date_otpravka_uved set int_date=1 WHERE DATE_FORMAT (date_tek, '%d.%m.%Y')=DATE_FORMAT (now (), '%d.%m.%Y')»);

include («subscribtion_two.php»); /* Отправить сообщение всем активированным подписчикам */

if ($a == 1) { /* Если метка равна 1 */ }

if (date ('" d.m.Y H: i:s') > date ('" d.m.Y 21:00:00')) { /* Если текущее время больше 9 вечера */

$request7 = mysql_query («UPDATE talon_doctor set talon_status=0 WHERE talon_status=5»); /* Талоны доступны к записи */

}

Модуль «Выданные талоны» — это отдельный файл, который обрабатывается интерпретатором PHP и предназначен, для создания архива подтверждённых талонов на приём к специалистам.

Модуль состоит из подключаемых файлов, а также функции архива:

? include ('bd.php'); /* Соединение с БД */

? include ('404_error.php'); /* Проверка модуля на ошибки */

? include ('components/shapka.php'); /* Заголовочная часть */

? include ('components/line.php'); /* Разделительная линия */

? include ('components/menu.php'); /* Меню */

? include ('components/line.php'); /* Разделительная линия */

? include ('components/search.php'); /* Поиск талонов */

? include ('components/line.php'); /* Разделительная линия */

if (isset ($_GET['page_doctor'])) {/* Если существует переменная $_GET['page_doctor'] которая передана через метод GET, то записать этот метод в переменную $page_doctor */

$page_doctor = $_GET['page_doctor'];

$page_doctor_array = explode («_» ,$page_doctor); /* Разбивка */

$page_doctor1 = $page_doctor_array[0]; /* Переменная массива */

$page_doctor2 = $page_doctor_array[1]; /* Переменная массива */

}

/* Массив из месяцев года */

$monthes = array (

'01' => 'Январь',

'02' => 'Февраль',

'03' => 'Март',

'04' => 'Апрель',

'05' => 'Май',

'06' => 'Июнь',

'07' => 'Июль',

'08' => 'Август',

'09' => 'Сентябрь',

'10' => 'Октябрь',

'11' => 'Ноябрь',

'12' => 'Декабрь'

);

$arhiv = mysql_query («SELECT DISTINCT left (`date_talon`, 7) AS date_talon FROM talon_doctor WHERE id_doctor='$page_doctor1' and talon_status='2' ORDER BY date_talon DESC»); «); /* Занести в переменную массив с выданными талонами, предварительно отсортировав по дате выдачи */

while ($arhiv_itog = mysql_fetch_assoc ($arhiv)) { /* Цикл архива */

/* Вывод выданных талонов по месяцам */

$i++; /* Счётчик */

$date_format = explode («-» ,$arhiv_itog['date_talon']); /* Разбивка даты талонов по — */

$date_title = $arhiv_itog['date_talon']; /* Заголовок */

$date_begin = $date_title; /* Начало месяца */

$date_end = $date_title; /* Конец месяца */

$date_begin = $date_begin." -01″; /* Считать началом -01 */

$date_end = $date_end." -31″; /* Считать концом -31 */

SQL запрос к базе данных WEB-портала, который позволяет сгенерировать архив выданных талонов, исключительно для выбранного специалиста.

$arhiv2 = mysql_query («SELECT *, DATE_FORMAT (date_talon, '%W %e %M') as date_talon, REPLACE (TIMEDIFF (talon_doctor.date_talon, NOW ()), ':','') as end_of_activation_result

FROM talon_doctor, doctor, talon_time, talon_family, talon_status

WHERE talon_doctor.id_doctor='$page_doctor1' AND doctor. id_doctor='$page_doctor1' talon_doctor.date_talon BETWEEN '{$date_begin}' AND '{$date_end}' AND talon_doctor.talon_status='2' ORDER BY talon_doctor.date_talon DESC"); /* Архив талонов */

$arhiv_itog5 = mysql_fetch_array ($arhiv2); /* Массив архива */

}

Модуль «Ожидаемые талоны» — это отдельный файл обрабатываемый интерпретатором PHP, который предназначен, для отображения ожидаемых талонов.

Модуль состоит из подключаемых файлов, а также SQL запроса на выборку ожидаемых талонов:

? include ('bd.php'); /* Соединение с БД */

? include ('404_error.php'); /* Проверка модуля на ошибки */

? include ('components/shapka.php'); /* Заголовочная часть */

? include ('components/line.php'); /* Разделительная линия */

? include ('components/menu.php'); /* Меню */

? include ('components/line.php'); /* Разделительная линия */

? include ('components/search.php'); /* Поиск талонов */

? include ('components/line.php'); /* Разделительная линия */

$text_oglav4 = mysql_query («SELECT *, DATE_FORMAT (talon_doctor.date_talon, '%W %e %M %Y') as date_talon FROM talon_doctor, doctor, talon_family, talon_time, talon_status WHERE id_vihod='$v_ojid' and talon_doctor.id_doctor=doctor.id_doctor and talon_doctor.talon_status='1' and talon_doctor.id_talon=talon_family.id_talon and talon_doctor.time_talon=talon_time.time_talon AND talon_status.talon_status=talon_doctor.talon_status ORDER BY talon_doctor.id_talon»); /* Занести в переменную массив с ожидаемыми талонами, предварительно отсортировав по идентификаторам докторов */

$text_oglav5 = mysql_fetch_array ($text_oglav4); /* Ассоциативный массив ожидаемых талонов */

while ($text_oglav5 = mysql_fetch_array ($text_oglav4)) {

/* Вывод ожидаемых талонов в виде информационного стека */

}

Модуль «Расписание» — это отдельный файл обрабатываемый интерпретатором PHP, который предназначен, для отображения расписания отделений.

Модуль состоит из подключаемых файлов, а также SQL запроса на выборку расписания:

? include ('bd.php'); /* Соединение с БД */

? include ('404_error.php'); /* Проверка модуля на ошибки */

? include ('components/shapka.php'); /* Заголовочная часть */

? include ('components/line.php'); /* Разделительная линия */

? include ('components/menu.php'); /* Меню */

? include ('components/line.php'); /* Разделительная линия */

? include ('components/search.php'); /* Поиск талонов */

? include ('components/line.php'); /* Разделительная линия */

$text_oglav = mysql_query («SELECT * FROM oglav_text WHERE id_vihod='$sched_array'»); «); /* Занести в переменную массив с ожидаемыми талонами, предварительно отсортировав по идентификаторам докторов */

$text_oglav_stroka = mysql_fetch_array ($text_oglav); /* Ассоциативный массив расписания */

for ($i=1; $i<=mysql_num_rows ($schedule); $i++) {/* Парсинг расписания с последующем выводом */

$schedule2 = mysql_fetch_array ($schedule); /* Предварительное распределение текущего блока с расписанием в виде ассоциативного массива */

if ($schedule2['doc_id'] == 463 || $schedule2['doc_id'] == 51 || $schedule2['doc_id'] == 45 || $schedule2['doc_id'] == 73 || $schedule2['doc_id'] == 5 || $schedule2['doc_id'] == 465 || $schedule2['doc_id'] == 1 || $schedule2['doc_id'] == 3 || $schedule2['doc_id'] == 7 || $schedule2['doc_id'] == 59 || $schedule2['doc_id'] == 77 || $schedule2['doc_id'] == 12 || $schedule2['doc_id'] == 74 || $schedule2['doc_id'] == 14 || $schedule2['doc_id'] == 466 AND $schedule2['doc_id'] == 2 AND $schedule2['doc_id'] == 4 AND $schedule2['doc_id'] == 6 AND $schedule2['doc_id'] == 8 AND $schedule2['doc_id'] == 9 AND $schedule2['doc_id'] == 10 AND $schedule2['doc_id'] == 468 AND $schedule2['doc_id'] == 470 AND $schedule2['doc_id'] == 74 AND $schedule2['doc_id'] == 469 AND $schedule2['doc_id'] == 11)

{ /* Отключенные специалисты */ }

}

Модуль «Вопрос онлайн» — это отдельный файл, который обрабатывается интерпретатором PHP, а затем отображается в виде полноценной страницы с формой отправки новых вопросов, а также блоками предыдущих вопросов.

Модуль состоит из подключаемых файлов и функций отправки нового вопроса с выводом предыдущих вопросов в виде отдельных блоков:

? include ('bd.php'); /* Соединение с БД */

? include ('404_error.php'); /* Проверка модуля на ошибки */

? include ('components/shapka.php'); /* Заголовочная часть */

? include ('components/line.php'); /* Разделительная линия */

? include ('components/menu.php'); /* Меню */

? include ('components/line.php'); /* Разделительная линия */

? include ('components/search.php'); /* Поиск талонов */

? include ('components/line.php'); /* Разделительная линия */

function knopka_zapisi_f () { /* Функция отправки вопроса*/

var name_reb_title = $('.name_reb'); /* Имя отправителя */

var name_reb_l_title = $.trim (name_reb_title.val ()).length; /* Сколько символов было введено в виде имени, предварительно удалив пробелы от начала и конца строки */

var name_reb_val_title = name_reb_title.val (); /* Текст вопроса */

var vopros_title = $('.vopros'); /* Вопрос */

var vopros_l_title = $.trim (vopros_title.val ()).length; /* Сколько символов было введено в виде вопроса, предварительно удалив пробелы от начала и конца строки */

var vopros_val_title = vopros_title.val ();/* Вопрос */

var mail_reb_title = $(«.mail_reb»); /* Емайл отправителя */

var mail_reb_l_title = $.trim (mail_reb_title.val ()).length; /* Сколько символов было введено в виде емайла, предварительно удалив пробелы от начала и конца строки */

var mail_reb_val_title = mail_reb_title.val (); /* Емайл */

var zap_tal_id = $(«.zap_tal_id2»).text (); /* Идентификатор */

Проверка всех заполненных полей на правильность ввода, что позволит избежать SQL-инъекций на стороне клиентской машине, а также передать серверу обработанные данные.

if (name_reb_l_title > 1 && vopros_l_title > 9 && vopros_l_title < 1001 && mail_reb_l_title > 0 && /^([a-zA-Z0−9])+([.a-zA-Z0−9_-])*@([a-zA-Z0−9_-])+(. a-zA-Z0−9_-]+)*.([a-zA-Z]{2,6})$/i.test (mail_reb_val_title) == true) {

function block_hidden_span_ajax () { /* Функция срабатывает перед отправкой AJAX запроса на сервер */

$(«.block_hidden_span span»).text («Идёт отправка вопроса …»);

block_hidden_first ();

$(«.block_hidden_img img»).fadeOut (0); /* Скрытие кнопки закрытия отправки */

$(«.block_hidden»).fadeIn (0); /* Показ блокировки на время отправки запроса на сервер */

}

AJAX запрос к серверу WEB-портала, который позволит отправить вопрос пользователя, без перезагрузки модуля «Вопрос онлайн», что в свою очередь приведёт к снижению времени отправки вопроса, а также уменьшению потребляемых ресурсов [9][10].

$.ajax ({ /* AJAX запрос */

send: block_hidden_span_ajax (), /* Исполнение функции блокировки */

type: «POST», /* Запрос посылается методом POST */

url: «components/vopros_v_obrabotke.php», /* Запрос посылается в указанный файл, на обработку и по необходимости исполнение */

data: ({ /* Посылаемые значения */

" name_reb_val_title": name_reb_val_title, /* Имя */

" vopros_val_title": vopros_val_title, /* Вопрос */

" mail_reb_val_title": mail_reb_val_title, /* Емайл */

" zap_tal_id": zap_tal_id /* ID вопроса */

}),

dataType: «html», /* Тип */

success: (function (ajax_subscription_site2) { /* Ответ от сервера в виде символа */

Если при отправке вопроса возникла фатальная ошибка, то сработает уведомление с подробным описанием ошибки.

if (ajax_subscription_site2 == 0) {

$(«.block_hidden_span span»).text («Произошла ошибка вопрос не отправлен»); /* Уведомление пользователя */

block_hidden_first ();

$(«.block_hidden_img img»).fadeIn (0); /* Показ уведомления */

}

Если при отправке вопроса ошибок не возникло, то будет произведена очистка полей от устаревших данных.

if (ajax_subscription_site2 == 1) {

$(«.block_hidden_span span»).html («Вопрос успешно отправлен на проверку модератору»); /* Уведомление об успешной отправкой вопроса */

block_hidden_first ();

name_reb_title.val (««); /* Очистка поля */

vopros_title.val (««); /* Очистка поля */

mail_reb_title.val (««); /* Очистка поля */

$(«.name_question_span»).text («Введите Ваше имя!»);

$(«.vopros_question_span»).text («Введите Ваш вопрос!»);

$(«.mail_question_span»).text («На указанный емайл будет выслано уведомление об ответе на Ваш вопрос!»); /* На указанный при отправке вопроса электронный адрес было выслано сообщение */

$(«.block_hidden_img img»).fadeIn (0, load_vopros_chislo ()); /* Уведомление об успешном завершении работы модуля, а также сбросе всех полей в исходное состояние */

}

})

});

}

else { /* Если проверка полей не пройдена */

$(«.block_hidden_span span»).text («Пожалуйста заполните все необходимые поля …»); /* Подсказка на заполнение полей */

block_hidden_first ();

$(«.block_hidden»).fadeIn (0); /* Показ подсказки */

}

}

$(«.knopka_zapisi»).on («click», function (knopka_zapisi) { /* При клике на кнопку отправить вопрос, отключается действие по умолчанию, после чего происходит отправка вопроса в базу */

knopka_zapisi.preventDefault ();

knopka_zapisi_f ();

});

Модуль «Дежурные специалисты» — это отдельный файл, который обрабатывается интерпретатором PHP, а затем отображается в виде полноценной страницы с дежурными специалистами.

Модуль состоит из подключаемых файлов и функции загрузки дежурных специалистов [12]:

? include ('bd.php'); /* Соединение с БД */

? include ('404_error.php'); /* Проверка модуля на ошибки */

? include ('components/shapka.php'); /* Заголовочная часть */

? include ('components/line.php'); /* Разделительная линия */

? include ('components/menu.php'); /* Меню */

? include ('components/line.php'); /* Разделительная линия */

? include ('components/search.php'); /* Поиск талонов */

? include ('components/line.php'); /* Разделительная линия */

function load_duty () { /* Функция загрузки дежурных специалистов */

$(«.dytu»).load («components/duty.php», function (){ /* Парсинг информации */

$(«.error_block»).fadeOut (0, function (){ /* Скрытие блока с уведомлением, что дежурных врачей нет */

$(«.error_block:first»).fadeIn (0); /* Показ блока с новыми дежурными врачами */

});

}

load_duty (); /* Запуск функции */

setInterval (load_duty, 15 000); /* Интервал парсинга */

SQL запрос к базе данных WEB-портала, который позволяет выбрать всех дежурных специалистов, с предварительной сортировкой по дате дежурства.

$dej_vrach = mysql_query («SELECT duty. id_doctor as d_id_doc,

DATE_FORMAT (duty.date, '%e %M %Y') as d_date,

DATE_FORMAT (duty.date, '%j') as d1_date,

duty.time_n as d_time_n, duty. time_k as d_time_k,

doctor.id_doctor as doc_id, doctor. first as first,

doctor.last as last, doctor. middle as middle,

doctor.special as doc_special,

special.special as sp_special, special. spec_name as spec_name

FROM duty, doctor, special

WHERE doctor. id_doctor = duty. id_doctor AND doctor. special = special. special ORDER BY duty. date DESC");

if (mysql_num_rows ($dej_vrach) > 0) { /* Если имеется хоть один дежурный специалист */

$mass_dej_vrach = mysql_fetch_array ($dej_vrach); /* Ассоциативный массив дежурный специалистов */

while ($mass_dej_vrach = mysql_fetch_array ($dej_vrach)) /* Вывод дежурных специалистов, пока массив не окажется пустым */

Модуль «Ответы на часто задаваемые вопросы» — это отдельный файл, который обрабатывается интерпретатором PHP, а затем отображается в виде полноценной страницы с ответами на часто задаваемые вопросы.

Модуль состоит из подключаемых файлов и функции загрузки ответов [14]:

? include ('bd.php'); /* Соединение с БД */

? include ('404_error.php'); /* Проверка модуля на ошибки */

? include ('components/shapka.php'); /* Заголовочная часть */

? include ('components/line.php'); /* Разделительная линия */

? include ('components/menu.php'); /* Меню */

? include ('components/line.php'); /* Разделительная линия */

? include ('components/search.php'); /* Поиск талонов */

? include ('components/line.php'); /* Разделительная линия */

function load_question () { /* Функция загрузки ответов */

$(«.question_load»).load («components/question_site.php», function (){

/* Парсинг ответов */

});

} load_question (); /* Запуск функции */

setInterval (load_question, 900 000); /* Интервал парсинга */

портал программный модуль электронный

Модуль «Статистика» — это отдельный файл, который обрабатывается интерпретатором PHP, а затем отображается в виде полноценной страницы со статистическими данными.

Модуль состоит из подключаемых файлов и функции загрузки статистики:

? include ('bd.php'); /* Соединение с БД */

? include ('404_error.php'); /* Проверка модуля на ошибки */

? include ('components/shapka.php'); /* Заголовочная часть */

? include ('components/line.php'); /* Разделительная линия */

? include ('components/menu.php'); /* Меню */

? include ('components/line.php'); /* Разделительная линия */

? include ('components/search.php'); /* Поиск талонов */

? include ('components/line.php'); /* Разделительная линия */

function load_s_sta () { /* Функция загрузки статистики */

$(«.stat_ka»).load («components/statistika_site.php», function (){

/* Парсинг статистики */

});

}

load_s_sta (); /* Запуск функции */

setInterval (load_s_sta, 15 000); /* Интервал парсинга */

Модуль «Контакты» — это отдельный файл, который обрабатывается интерпретатором PHP, а затем отображается в виде полноценной страницы с контактными данными.

Модуль состоит из подключаемых файлов и функции загрузки контактов:

? include ('bd.php'); /* Соединение с БД */

? include ('404_error.php'); /* Проверка модуля на ошибки */

? include ('components/shapka.php'); /* Заголовочная часть */

? include ('components/line.php'); /* Разделительная линия */

? include ('components/menu.php'); /* Меню */

? include ('components/line.php'); /* Разделительная линия */

? include ('components/search.php'); /* Поиск талонов */

? include ('components/line.php'); /* Разделительная линия */

function load_contact () { /* Функция загрузки контактов */

$(«.contacts»).load («components/contact_site.php», function (){

/* Парсинг контактов */

});

}

load_contact (); /* Запуск функции */

setInterval (load_contact, 900 000); /* Интервал парсинга */

Модуль «Список отказов к специалистам» — это отдельный файл, который обрабатывается интерпретатором PHP, а затем отображается в виде полноценной страницы с списком отказов на приём.

Модуль состоит из подключаемых файлов и функций вывода списка отказов:

? include ('bd.php'); /* Соединение с БД */

? include ('404_error.php'); /* Проверка модуля на ошибки */

? include ('components/shapka.php'); /* Заголовочная часть */

? include ('components/line.php'); /* Разделительная линия */

? include ('components/menu.php'); /* Меню */

? include ('components/line.php'); /* Разделительная линия */

? include ('components/search.php'); /* Поиск талонов */

? include ('components/line.php'); /* Разделительная линия */

$arhiv2 = mysql_query («SELECT *, DATE_FORMAT (date_zan, '%W %e %M %Y года в %k:%i') as date_zan FROM otkazi WHERE date_zan BETWEEN '{$date_begin}' AND '{$date_end}' ORDER BY otkazi. date_zan DESC»); /* Занести в переменную массив с отказами в записи на приём, предварительно отсортировав по дате отказа */

$arhiv_itog5 = mysql_fetch_array ($arhiv2); /* Ассоциативный массив */

while ($arhiv_itog5 = mysql_fetch_array ($arhiv2)) { /* Вывод информации пока массив с данными не пуст */

/* Вывод данных */

}

Модуль «Нормативно — правовые акты» — это отдельный файл, который обрабатывается интерпретатором PHP, а затем отображается в виде полноценной страницы с нормативно — правовыми актами.

Модуль состоит из подключаемых файлов и функции загрузки нормативно — правовых актов:

? include ('bd.php'); /* Соединение с БД */

? include ('404_error.php'); /* Проверка модуля на ошибки */

? include ('components/shapka.php'); /* Заголовочная часть */

? include ('components/line.php'); /* Разделительная линия */

? include ('components/menu.php'); /* Меню */

? include ('components/line.php'); /* Разделительная линия */

? include ('components/search.php'); /* Поиск талонов */

? include ('components/line.php'); /* Разделительная линия */

function load_n_p_a () { /* Функция загрузки нормативно — правовых актов */

$(«.question_n_p_a»).load («components/question_n_p_a.php», function (){

/* Парсинг нормативно — правовых актов */

});

}

load_n_p_a (); /* Запуск функции */

Модуль «Информация о подготовке к обследованиям» — это отдельный файл, который обрабатывается интерпретатором PHP, а затем отображается в виде полноценной страницы с информацией по подготовке к обследованиям.

Модуль состоит из подключаемых файлов и функции загрузки информации по подготовке к обследованиям:

? include ('bd.php'); /* Соединение с БД */

? include ('404_error.php'); /* Проверка модуля на ошибки */

? include ('components/shapka.php'); /* Заголовочная часть */

? include ('components/line.php'); /* Разделительная линия */

? include ('components/menu.php'); /* Меню */

? include ('components/line.php'); /* Разделительная линия */

? include ('components/search.php'); /* Поиск талонов */

? include ('components/line.php'); /* Разделительная линия */

function load_article () { /* Функция загрузки информации */

$(«.question_article»).load («components/question_article_prof.php», function (){ /* Парсинг информации */ });}

load_article (); /* Запуск функции */

$article = mysql_query («SELECT *, DATE_FORMAT (date_article_question, '%d %M %Y в %H:%i') as d_a_q FROM article_professionals ORDER BY id_article»); /* Выборка всей информации по подготовке к обследованиям */

if (mysql_num_rows ($article) == 0) { /* Если результат выборки равен NULL */

echo «Данный раздел готовится к публикованию» ;

}

if (mysql_num_rows ($article) > 0) { /* Если есть хоть одна информация по подготовке к обследованию */

$article_array = mysql_fetch_array ($article); /* Ассоциативный массив с информацией */

do { /* Выполнять пока есть информация в массиве */

Генерируемые HTML теги, которые предназначены для вывода информации по подготовке к обследованиям в виде отдельных блочных элементов страницы.

Внутренний блочный элемент, позволяющий расположить на странице идентификатор информации.

Внутренний блочный элемент, позволяющий расположить на странице информационную заголовочную часть.

Прочитать статью целиком

Внутренний блочный элемент, позволяющий расположить на странице дату опубликования информации.

Дата опубликования статьи

Внутренний блочный элемент, позволяющий расположить на странице полную информацию касательно правильной подготовке к обследованиям.

}

while ($article_array = mysql_fetch_array ($article)); /* Вывод информации по подготовке к обследованию */

}

Модуль «Наша жизнь» — это отдельный файл, который обрабатывается интерпретатором PHP, а затем отображается в виде полноценной страницы с информацией о жизни внутри больницы.

Модуль состоит из подключаемых файлов и функции загрузки информации:

? include ('bd.php'); /* Соединение с БД */

? include ('404_error.php'); /* Проверка модуля на ошибки */

? include ('components/shapka.php'); /* Заголовочная часть */

? include ('components/line.php'); /* Разделительная линия */

? include ('components/menu.php'); /* Меню */

? include ('components/line.php'); /* Разделительная линия */

? include ('components/search.php'); /* Поиск талонов */

? include ('components/line.php'); /* Разделительная линия */

function load_our_life () { /* Функция загрузки информации */

$(«.question_our_life»).load («components/question_our_life.php», function (){ /* Парсинг информации */ });

}

load_our_life (); /* Запуск функции */

$our_life = mysql_query («SELECT *, DATE_FORMAT (date_faq_question, '%d %M %Y в %H:%i') as d_f_q FROM our_life ORDER BY id_n_p_a»); /* Выборка всех статей */

if (mysql_num_rows ($our_life) == 0) { /* Если результат выборки равен NULL */

echo «Данный раздел готовится к публикованию» ;

}

if (mysql_num_rows ($our_life) > 0) { /* Если есть хоть одна статья */

$our_life_array = mysql_fetch_array ($our_life); /* Ассоциативный массив со статьями */

do { /* Выполнять пока есть статьи в массиве */

Генерируемые HTML теги, которые предназначены для вывода статей о жизни больницы в виде отдельных блочных элементов страницы.

Внутренний блочный элемент, позволяющий расположить на странице идентификатор статьи.

Автор:

Внутренний блочный элемент, позволяющий расположить на странице заголовочную часть статьи.

Прочитать статью целиком

Внутренний блочный элемент, позволяющий расположить на странице дату опубликования статьи.

Дата опубликования статью

Внутренний блочный элемент, позволяющий расположить на странице статьи в развёрнутом варианте.

}

while ($our_life_array = mysql_fetch_array ($our_life)); /* Отображение статей о жизни больницы */

}

Модуль «Полезная информация» — это отдельный файл, который обрабатывается интерпретатором PHP, а затем отображается в виде полноценной страницы с полезной информацией.

Модуль состоит из подключаемых файлов и функции загрузки информации:

? include ('bd.php'); /* Соединение с БД */

? include ('404_error.php'); /* Проверка модуля на ошибки */

? include ('components/shapka.php'); /* Заголовочная часть */

? include ('components/line.php'); /* Разделительная линия */

? include ('components/menu.php'); /* Меню */

? include ('components/line.php'); /* Разделительная линия */

? include ('components/search.php'); /* Поиск талонов */

? include ('components/line.php'); /* Разделительная линия */

function helpful_information () { /* Функция загрузки информации */

$(«.helpful_information»).load («components/helpful_information.php», function (){

/* Парсинг информации */

});

}

helpful_information (); /* Запуск функции */

$helpful_information = mysql_query («SELECT *, DATE_FORMAT (date_faq_question, '%d %M %Y в %H:%i') as d_f_q FROM helpful_information ORDER BY id_n_p_a»); /* Выборка всей полезной информации */

if (mysql_num_rows ($helpful_information) == 0) { /* Если полезная информация не добавлена в базу данных */

echo «Данный раздел готовится к публикованию» ;

}

if (mysql_num_rows ($helpful_information) > 0) { /* Если есть хоть одна полезная информация */

$helpful_information_array = mysql_fetch_array ($helpful_information); /* Ассоциативный массив с полезной информацией */

do { /* Выполнять пока есть полезная информация в массиве */

Генерируемые HTML теги, которые предназначены для вывода полезной информации в виде отдельных блочных элементов страницы.

Внутренний блочный элемент, позволяющий расположить на странице идентификатор информации.

Автор:

Внутренний блочный элемент, позволяющий расположить на странице информационную заголовочную часть.

Прочитать информацию целиком

Внутренний блочный элемент, позволяющий расположить на странице дату опубликования полезной информации.

Дата опубликования информации

Внутренний блочный элемент, позволяющий расположить на странице полезную информацию в развёрнутом варианте.

}

while ($helpful_information_array = mysql_fetch_array ($helpful_information)); /* Отображение полезной информации */

}

2.3 Описание подключаемых файлов

Файл соединения с базой данных — это отдельный файл, который подключается к основным модулям портала [16]:

$db = mysql_connect («localhost» ," root" ," «) or die («Проблемы у нашего хостинг-провайдера! Как только проблемы будут решены сайт возобновит свою работу «.mysql_error ()); /* Создаётся переменная $db соединения с БД, в противном случае будет сгенерирована фатальная ошибка с текстом ошибки */

mysql_select_db («kostdgb «,$db) or die («Нет соединения с БД» .mysql_error ()); /* Подключение к нужной БД, если БД не найдена, будет сгенерирована фатальная ошибка с текстом ошибки */

/* Устанавливается кодировка, в данном случае русская кодировка */

mysql_query ('SET CHARACTER SET utf8');

mysql_query ('SET NAMES utf8');

/* Установка русской локали соединения */

mysql_query («SET lc_time_names = 'ru_RU'») ;

Файл проверки модулей на ошибки — это отдельный файл, который подключается к основным модулям портала [17]:

$zap_priom = mysql_query («SELECT * FROM dlpodrazdeleniya WHERE podrazdelenie_v=1», $db); /* Проверка на ошибки файл меню, раздел «Записаться на приём» -> «Запись на приём», ошибка в файле с меню */

if (!$zap_priom) { /* Парсер ошибки */ }

if (mysql_num_rows ($zap_priom) == 0) { /* Парсер ошибки */ }

$podrazdeleniya = mysql_query («SELECT * FROM dlpodrazdeleniya WHERE podrazdelenie_v=1», $db); /* Проверка на ошибки файл меню, раздел «Записаться на приём» -> «Выданные талоны», ошибка в файле с меню */

if (!$podrazdeleniya) { /* Парсер ошибки */ }

if (mysql_num_rows ($podrazdeleniya) == 0) { /* Парсер ошибки */ }

$ojid = mysql_query («SELECT * FROM dlpodrazdeleniya WHERE podrazdelenie_v=1»); /* Проверка на ошибки файл меню, раздел «Записаться на приём» -> «Ожидаемые талоны», ошибка в файле с меню */

if (!$ojid) { /* Парсер ошибки */ }

if (mysql_num_rows ($ojid) == 0) { /* Парсер ошибки */ }

$schedule = mysql_query («SELECT * FROM dlpodrazdeleniya»); /* Проверка на ошибки файл меню, раздел «Расписание» */

if (!$schedule) { /* Парсер ошибки */ }

if (mysql_num_rows ($schedule) == 0)

{ /* Парсер ошибки */ }

Файл поиска талонов — это отдельный файл, который подключается к основным модулям портала:

Заполнить форму текущей работой