Файл: Отчет о прохождении производственной практики в период с 01. 09. 2022 по 12. 10. 2022.docx

ВУЗ: Не указан

Категория: Отчеты по практике

Дисциплина: Не указана

Добавлен: 28.03.2024

Просмотров: 46

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

СОДЕРЖАНИЕ

Оглавление

Введение

Системный анализ IDEF0 и DFD

База данных

Инфологическое проектирование БД

Логическое проектирование базы данных.

Физическое проектирование базы данных.

Техническое описание сайта.

1. Эксплуатационное назначение:

2. Требования к дизайну сайта

…, но не  ;- абзацы имеют тег , а не ;- таблицы используются исключительно по их прямому назначению. 3. Требования к функциональности сайта 3.1. Управление контентом HTML+CSS+PHP+AJAX 3.2. Структура папок сайта. 3.2.1. ajax – содержит в себе php-файлы, которые передают результаты запроса к БД MySQL в ajax запрос для внедрения в вёрстку сайта.css – папка со стилями (CSS)fonts – папка со шрифтамиimages – папка с картинкамиjs – содержит в себе js-скриптыnordstar – папка с ftp-доступом, содержит в себе XML-файл с данными о рейсах авиакомпании NordStarvendor – ядро сайта 3.3. Требования к первой (главной) странице сайта. Шапка (хедер), сквозной структурный элемент, расположенный в верхней части страниц, располагается по всей ширине страницы и содержит следующие элементы (примерная схема– Приложение № 1 к техническому заданию):- герб муниципального образования город Норильск;- замаскированный блок входа в личный кабинет пользователя;- циферблат часов- индикатор состояния автодороги- онлайн табло рейсов авиакомпаний- онлайн табло НПОПАТ- онлайн табло Автодор(закрытая часть сайта)- гиперссылка на страницу с использованием сайта BUSTIME- гиперссылка на страницу с камерами- гиперссылка на страницу с лентой изменений- блок общей информации Аэропорта Алыкель- блок общей информации ЕДДС- виджеты windy- рекламный блок вместо онлайн табло Автодор(пользовательская часть сайта)- гиперссылка на редактор содержимого (в зависимости от роли, редактор отсутствует, если аккаунт принадлежит авиакомпании за ненадобностью, т.к. вся информация о рейсах подгружается из ftp-папки.- бегущая строка3.3.1. ГербВыполняет функцию гиперссылки на страничку с аутентификацией для работников организаций (закрытая часть сайта).3.3.2. Индикатор состояния автодорогиИмеет три вида индикации:ОТКРЫТО – автодорога открыта, индикатор горит зелёным цветомДВИЖЕНИЕ ОГРАНИЧЕНО – движение на автодороге ограничено, индикатор горит жёлтым цветомЗАКРЫТО ЧЧ:ММ ДД.ММ.ГГГГ – дорога закрыта, индикатор горит красным цветом, также отображается дата принятия решения о закрытии дороги.3.3.3. Бегущая строкаБегущая строка, демонстрирующая текущие новостные сводки, выгружаемые из базы данных3.3.4. Онлайн табло рейсов авиакомпанийОнлайн табло, содержащее в себе следующую информацию о рейсах:- Номер рейса- Авиакомпания- Дата рейса- Пункт отправления- Пункт прибытия- Плановое время отправления- Плановое время прибытия- Фактическое время отправления- Фактическое время прибытия- Статус рейса- Количество пассажиров(закрытая часть при индикации состояния автодороги ЗАКРЫТО)3.3.5. Онлайн табло НПОПАТПри индикации состояния автодороги ОТКРЫТО или ДВИЖЕНИЕ ОГРАНИЧЕНО показывает постоянное расписание в зависимости от дня недели. При индикации состояния автодороги ЗАКРЫТО показывает ручное расписание, редактируемое работниками организации НПОПАТ.Отображается следующая информация:- Дата рейса- Отправление- Направление движения- Назначение рейса- Количество автобусов (при индикации состояния автодороги ЗАКРЫТО)3.3.6. Онлайн табло АвтодорОтображается только в закрытой части сайта. Показываются следующие элементы:- Дата- Вид техники- Количество единиц техники3.3.7. Виджеты Windy- Карта ветров- Полная карта погоды 3.4. Требования к некоторым блокам сайта. 3.4.1. Лента изменений.Данная страница выводит информацию о действиях зарегистрированных пользователей на сайте. Доступна только для зарегистрированных пользователей. Для комфортного восприятия информации установлены фильтры:- По пользователям- По дате- По организациям- По действиям3.4.2. Камеры.Данная страница отображает потоковое видео с четырёх видеокамер, транслирующих визуальную обстановку на участке автодороги Норильск-Кайеркан-Алыкель. Доступна только для зарегистрированных пользователей.3.4.3. Автобусы.Данная страница отображает состояние автобусного маршрута 33 с отображением карты с GPS-трекингом автобусов, с использованием поставщика данных – BUSTIME. Доступна только для зарегистрированных пользователей.3.4.4. Редактор.Данная страница представляет собой редактор информации, размещаемой на сайте. Отображение данной страницы зависит от роли пользователя:-Администратор: Рис. 19 – «Страница Администратора» Рис. 20 – «Добавить пользователя»Роль администратора позволяет добавлять новых пользователей в систему. -НПОПАТ: Рис. 21 – «Страница НПОПАТ» Рис. 22 – «Добавить рейс автобуса»Роль НПОПАТ позволяет менять статус табло НПОПАТ и добавлять/изменять/удалять рейсы в расписании для статуса автодороги ЗАКРЫТО.-ЕДДС: Рис. 23 – «Страница ЕДДС» Рис. 24 – «Добавить новость»Роль сотрудника ЕДДС позволяет изменять статус автодороги Норильск-Кайеркан-Алыкель и статус рейсов авиакомпаний. Также имеется возможность изменять текст на общем информационном табло ЕДДС, а также добавлять/изменять/удалять новости для бегущей строки.-Аэропорт Алыкель: Рис. 25 – «Страница Аэропорта»Данная роль позволяет работнику аэропорта Алыкель изменять текст на общем информационном табло аэропорта.-Автодор: Рис. 26 – «Страница Автодор» Рис. 27 – «Добавить единицу техники»Данная роль позволяет работнику организации Автодор добавлять/изменять/удалять единицы техники, отображаемые на информационном табло Автодор.-Авиакомпания:Данная роль не нуждается в функционале редактора, т.к. информация о состоянии рейсов загружается автоматически из файла, предоставляемого каждые 5 минут авиакомпанией NordStar.

4. Требования к видам обеспечения.

5. Порядок приемки сайта и ввода в эксплуатацию

6. Техническая поддержка сайта

Заключение

Приложение

echo $_SESSION['surname'] ?> echo $_SESSION['name'] ?> echo $_SESSION['patromymic'] ?> Выход echo $_SESSION['org_name'] ?>}else{?>ИНФОРМАЦИОННОЕ ТАБЛОШТАБА ШТОРМ}if ( isset($_SESSION['user_login']) ){?>ДД:ММ:ГГГГЧЧ:ММ ????--> Лента изменений}else{?>ДД:ММ:ГГГГЧЧ:ММ}?>СОСТОЯНИЕ АВТОДОРОГИНОРИЛЬСК -КАЙЕРКАН - АЛЫКЕЛЬ?>$sql = 'SELECT * FROM breaking_news';$stmt = $pdo->prepare($sql);$stmt->execute();$zapr = $stmt->fetchAll(PDO::FETCH_OBJ);?> foreach ($zapr as $row) { ?> echo $row->article; ?> }?>ОНЛАЙН ТАБЛО РЕЙСОВ АВИАКОМПАНИЙif (isset($_SESSION['user_login'])){ ?>???? Все}?>if (isset($_SESSION['user_login'])){ ?> } else {?> }?>Y7 110ПУНКТ ОТПРАВЛЕНИЯПо расписаниюЧЧ:ММФактическоеЧЧ:ММПУНКТ ПРИБЫТИЯПо расписаниюЧЧ:ММФактическоеЧЧ:ММЗадержанif (isset($_SESSION['user_login'])){?>216200115}?>-->$need = 1;$sql = 'SELECT * FROM t_indicators WHERE id=:id';$stmt = $pdo->prepare($sql);$parme = [':id' => $need];$stmt->execute($parme);$zapr = $stmt->fetch(PDO::FETCH_OBJ);if ($zapr->color == "1"){$var = true;}?>Y7 110ПУНКТ ОТПРАВЛЕНИЯПо расписаниюФактическоеЧЧ:ММЧЧ:ММПУНКТ ПРИБЫТИЯПо расписаниюФактическоеЧЧ:ММЧЧ:ММ1   2   3   4   5   6   7   8   9

, что свидетельствует об эффективности внедрения продукта.

Приложение


Index.html

if (isset($_SERVER['HTTP_ORIGIN'])) {

// should do a check here to match $_SERVER['HTTP_ORIGIN'] to a

// whitelist of safe domains

header("Access-Control-Allow-Origin: {$_SERVER['HTTP_ORIGIN']}");

header('Access-Control-Allow-Credentials: true');

header('Access-Control-Max-Age: 86400'); // cache for 1 day

}

// Access-Control headers are received during OPTIONS requests

if ($_SERVER['REQUEST_METHOD'] == 'OPTIONS') {

if (isset($_SERVER['HTTP_ACCESS_CONTROL_REQUEST_METHOD']))

header("Access-Control-Allow-Methods: GET, POST, PUT, DELETE, OPTIONS");

if (isset($_SERVER['HTTP_ACCESS_CONTROL_REQUEST_HEADERS']))

header("Access-Control-Allow-Headers: {$_SERVER['HTTP_ACCESS_CONTROL_REQUEST_HEADERS']}");

}

header('Content-Type:text/html; charset="utf-8"');

require_once 'vendor/db.php';

?>

















$sql = "SELECT * FROM protect WHERE id=:id";

$stmt = $pdo->prepare($sql);

$neededed = 1;

$params = [':id' => $neededed];

$stmt->execute($params);

$zapr = $stmt->fetch(PDO::FETCH_OBJ);

$_SESSION['allow'] = $zapr->opt1;

if ($_SESSION['allow'] == 1) {

if ( isset($_SESSION['user_login']) ){

?>





-->



-->





ИНФОРМАЦИОННОЕ ТАБЛО



ШТАБА ШТОРМ


















if ($_SESSION['org'] == "6") { ?>


} else { ?>


}

?>




echo $_SESSION['surname'] ?>



echo $_SESSION['name'] ?>



echo $_SESSION['patromymic'] ?>









Выход


echo $_SESSION['org_name'] ?>










}else{?>











ИНФОРМАЦИОННОЕ ТАБЛО



ШТАБА ШТОРМ









}

if ( isset($_SESSION['user_login']) ){

?>







ДД:ММ:ГГГГ



ЧЧ:ММ














????-->

Лента изменений









}else{?>





ДД:ММ:ГГГГ



ЧЧ:ММ









}

?>





СОСТОЯНИЕ АВТОДОРОГИ



НОРИЛЬСК -



КАЙЕРКАН - АЛЫКЕЛЬ








?>












$sql = 'SELECT * FROM breaking_news';

$stmt = $pdo->prepare($sql);

$stmt->execute();

$zapr = $stmt->fetchAll(PDO::FETCH_OBJ);

?>





foreach ($zapr as $row) {

?>



echo $row->article; ?>



}

?>














ОНЛАЙН ТАБЛО РЕЙСОВ АВИАКОМПАНИЙ




if (isset($_SESSION['user_login']))

{ ?>



???? Все






}

?>










if (isset($_SESSION['user_login']))

{ ?>




} else {

?>




}

?>



Y7 110







ПУНКТ ОТПРАВЛЕНИЯ


По расписанию


ЧЧ:ММ


Фактическое


ЧЧ:ММ








ПУНКТ ПРИБЫТИЯ


По расписанию


ЧЧ:ММ


Фактическое


ЧЧ:ММ








Задержан






if (isset($_SESSION['user_login'])){

?>



216



200



1



15






}

?>



-->


$need = 1;

$sql = 'SELECT * FROM t_indicators WHERE id=:id';

$stmt = $pdo->prepare($sql);

$parme = [':id' => $need];

$stmt->execute($parme);

$zapr = $stmt->fetch(PDO::FETCH_OBJ);

if ($zapr->color == "1")

{

$var = true;

}

?>











Y7 110







ПУНКТ ОТПРАВЛЕНИЯ






По расписанию


Фактическое






ЧЧ:ММ


ЧЧ:ММ












ПУНКТ ПРИБЫТИЯ






По расписанию


Фактическое






ЧЧ:ММ


ЧЧ:ММ












1   2   3   4   5   6   7   8   9




if (isset($_SESSION['user_login'])){

if ($var == true)

{

?>



216



200



1



15






}

}

?>









Y7 110







ПУНКТ ОТПРАВЛЕНИЯ






По расписанию


Фактическое






ЧЧ:ММ


ЧЧ:ММ












ПУНКТ ПРИБЫТИЯ






По расписанию


Фактическое






ЧЧ:ММ


ЧЧ:ММ












Задержан






if (isset($_SESSION['user_login'])){

if ($var == true)

{

?>



216



200



1



15






}

}

?>









Y7 110







ПУНКТ ОТПРАВЛЕНИЯ






По расписанию


Фактическое






ЧЧ:ММ


ЧЧ:ММ












ПУНКТ ПРИБЫТИЯ






По расписанию


Фактическое






ЧЧ:ММ


ЧЧ:ММ












Задержан






if (isset($_SESSION['user_login'])){

if ($var == true)

{

?>



216



200



1



15






}

}

?>









Y7 110







ПУНКТ ОТПРАВЛЕНИЯ






По расписанию


Фактическое






ЧЧ:ММ


ЧЧ:ММ












ПУНКТ ПРИБЫТИЯ






По расписанию


Фактическое






ЧЧ:ММ


ЧЧ:ММ












Задержан






if (isset($_SESSION['user_login'])){

if ($var == true)

{

?>



216



200



1



15






}

}

?>









Y7 110







ПУНКТ ОТПРАВЛЕНИЯ






По расписанию


Фактическое






ЧЧ:ММ


ЧЧ:ММ












ПУНКТ ПРИБЫТИЯ






По расписанию


Фактическое






ЧЧ:ММ


ЧЧ:ММ












Задержан






if (isset($_SESSION['user_login'])){

if ($var == true)

{

?>



216



200



1



15






}

}

?>









Y7 110







ПУНКТ ОТПРАВЛЕНИЯ






По расписанию


Фактическое






ЧЧ:ММ


ЧЧ:ММ












ПУНКТ ПРИБЫТИЯ






По расписанию


Фактическое






ЧЧ:ММ


ЧЧ:ММ












Задержан






if (isset($_SESSION['user_login'])){

if ($var == true)

{

?>



216



200



1



15






}

}

?>









Y7 110







ПУНКТ ОТПРАВЛЕНИЯ






По расписанию


Фактическое






ЧЧ:ММ


ЧЧ:ММ












ПУНКТ ПРИБЫТИЯ






По расписанию


Фактическое






ЧЧ:ММ


ЧЧ:ММ












Задержан






if (isset($_SESSION['user_login'])){

if ($var == true)

{

?>



216



200



1



15






}

}

?>









Y7 110







ПУНКТ ОТПРАВЛЕНИЯ






По расписанию


Фактическое






ЧЧ:ММ


ЧЧ:ММ












ПУНКТ ПРИБЫТИЯ






По расписанию


Фактическое






ЧЧ:ММ


ЧЧ:ММ












Задержан






if (isset($_SESSION['user_login'])){

if ($var == true)

{

?>



216



200



1



15






}

}

?>









Y7 110







ПУНКТ ОТПРАВЛЕНИЯ






По расписанию


Фактическое






ЧЧ:ММ


ЧЧ:ММ












ПУНКТ ПРИБЫТИЯ






По расписанию


Фактическое






ЧЧ:ММ


ЧЧ:ММ












Задержан






if (isset($_SESSION['user_login'])){

if ($var == true)

{

?>



216



200



1



15






}

}

?>









Y7 110







ПУНКТ ОТПРАВЛЕНИЯ






По расписанию


Фактическое






ЧЧ:ММ


ЧЧ:ММ












ПУНКТ ПРИБЫТИЯ






По расписанию


Фактическое






ЧЧ:ММ


ЧЧ:ММ












Задержан






if (isset($_SESSION['user_login'])){

if ($var == true)

{

?>



216



200



1



15






}

}

?>



-->



-->













if (isset($_SESSION['user_login'])){

?>

ОНЛАЙН ТАБЛО НПОПАТ





} else {

?>

ОНЛАЙН ТАБЛО НПОПАТ




}

?>























Норильск Отправление


ЧЧ:ММ



Алыкель Прибытие


ЧЧ:ММ



Время в пути



48 минут







Норильск Отправление


ЧЧ:ММ



Алыкель Прибытие


ЧЧ:ММ



Время в пути



48 минут







Норильск Отправление


ЧЧ:ММ



Алыкель Прибытие


ЧЧ:ММ



Время в пути



48 минут





-->








if (isset($_SESSION['user_login']))

{

?>





ОНЛАЙН ТАБЛО АВТОДОР

























Дата

Вид техники

Количество



Вид техники



Грейдер



Количество



2







Вид техники



Грейдер



Количество



2







Вид техники



Грейдер



Количество



2



-->




} else {

?>




}

?>























































































-->


} else {

$sql="SELECT * FROM protect WHERE id=1";

$stmt = $pdo->prepare($sql);

$stmt->execute();

$zapr = $stmt->fetch(PDO::FETCH_OBJ);

?>

= $zapr->message1 ?>



= $zapr->message2 ?>



}

?>











-->