PHP - MySQL
Автор: yashalava23 • Февраль 24, 2022 • Лабораторная работа • 2,178 Слов (9 Страниц) • 327 Просмотры
Министерство образования Российской Федерации
Федеральное государственное бюджетное образовательное учреждение
высшего образования
«Пермский национальный исследовательский политехнический университет»
Кафедра «Информационные технологии и автоматизированные системы»
Отчёт
По лабораторной работе №3
Тема: PHP - MySQL
Выполнил:
Cтудент группы ИВТ-20-2б
Исламов Ильназ Ильясович
Проверил:
Старший преподаватель кафедры ИТАС
Кузнецов Денис Борисович
Пермь 2021
Постановка задачи
Цель: формирование веб-страницы на основании результатов выполнения запросов
Задачи:
- PHP : разработать программу на в составе
∙ подключение к СУБД ;
∙ выполнение запроса штуки (3 );
∙ получение и вывод результатов запроса ;
2. разработать html-страницу для задания параметров PHP-программы;
3. разместить полученные файлы на хостинге;
4. отчет оформить используя шаблон отчета ,
14(1). Поликлиника.
Врач (Номер, ФИО, Категория, Специализация)
Больной (Шифр, ФИО, Дата_рождения, Вес, Рост)
Лекарство (Шифр, Название, Изготовитель)
Назначение (Номер_врача, Шифр_больного, Шифр_лекарства, Дозировка)
Назначение показывает, какому больному, какой врач, какое лекарство в какой дозировке выписал.
1) Выберите тип каждого атрибута.
2) Заполните отношения конкретными данными.
3) Разработайте и создайте БД для хранения указанных отношений.
4) Создайте программы для добавления, удаления и корректировки информации в БД.
5) Создайте программы для получения отчетов по каждой таблице БД.
6) Создайте программы для получения отчетов на следующие запросы:
– по любому значению любого атрибута для любого отношения выведите соответствующие записи БД;
– выведите ФИО больных, которым разные врачи выписали одно и то же лекарство в разной дозировке;
– выведите ФИО врачей, которые не выписывали указанное лекарство;
– выведите названия лекарств, которые выписывались всем больным;
– выведите специализации врачей, у которых лечился указанный больной;
– выведите ФИО самого высокого больного указанного врача;
– выведите названия лекарств, которые чаще всего выписывает указанный врач.
7) Оформите разработанные программы в виде единого АРМа.
Основная часть
- Таблицы (phpMyAdmin)
- Доктор
[pic 1]
- Лекарства
[pic 2]
- Пациент
[pic 3]
- Назначения
[pic 4]
- HTML – форма
- Код index.html
- </!DOCTYPE html>
- <html>
- <head>
- <meta charset="utf-8">
- <meta name="viewport" content="width=device-width, initial-scale=1">
- <title></title>
- </head>
- <body>
- <h2>Запросы</h2>
- <div>
- <h3>Через Mysqli:</h3>
- <form action="./q1.php" method="GET">
- 1) Показать больных, которым виписывали одно и тоже лекарство:
- <select group name ="Drug" required>
- <option></option>
- <option selected>Paracetamol</option>
- <option>Activated carbon</option>
- <option>Microlax</option>
- <option>Rillivirin</option>
- <option>Spazmol</option>
- </select>
- <button>Показать</button>
- </form>
- <form action="./q2.php" method="GET">
- 2) Показать специализации врачей, у которых лечился пациент:
- <select group name ="Patient" required>
- <option></option>
- <option value = "1" selected>Islamov Ilnaz Ilyasovich</option>
- <option value = "2">Mashkina Viktoria Vladimirovna</option>
- <option value = "3">Stashkevich Yan Maksimovich</option>
- <option value = "4">Zhidko Maria Viktorovna</option>
- <option value = "5">Kostylev Aleksandr Artemovich</option>
- <option value = "6">Fomina Elizaveta Maksimovna</option>
- </select>
- <button>Показать</button>
- </form>
- <form action="./q3.php" method="GET">
- 3) Показать самого высокого больного у выбранного врача:
- <select group name ="Doctor" required>
- <option></option>
- <option value = "1" selected>Ivanov Ivan Ivanovich</option>
- <option value = "2">Vasenin Egor Viktorovich</option>
- <option value = "3">Mashkina Elena Ivanovna</option>
- <option value = "4">Rihtor Pavel Maksimovich</option>
- <option value = "5">Kulman Irina Pavlovna</option>
- </select>
- <button>Показать</button>
- </form>
- </div>
- <div>
- <h3>Через PDO:</h3>
- <form action="./q1.php" method="GET">
- 1) Показать больных, которым виписывали одно и тоже лекарство:
- <select group name ="Drug" required>
- <option></option>
- <option selected>Paracetamol</option>
- <option>Activated carbon</option>
- <option>Microlax</option>
- <option>Rillivirin</option>
- <option>Spazmol</option>
- </select>
- <button>Показать</button>
- </form>
- <form action="./q2.php" method="GET">
- 2) Показать специализации врачей, у которых лечился пациент:
- <select group name ="Patient" required>
- <option></option>
- <option value = "1" selected>Islamov Ilnaz Ilyasovich</option>
- <option value = "2">Mashkina Viktoria Vladimirovna</option>
- <option value = "3">Stashkevich Yan Maksimovich</option>
- <option value = "4">Zhidko Maria Viktorovna</option>
- <option value = "5">Kostylev Aleksandr Artemovich</option>
- <option value = "6">Fomina Elizaveta Maksimovna</option>
- </select>
- <button>Показать</button>
- </form>
- <form action="./q3.php" method="GET">
- 3) Показать самого высокого больного у выбранного врача:
- <select group name ="Doctor" required>
- <option></option>
- <option value = "1" selected>Ivanov Ivan Ivanovich</option>
- <option value = "2">Vasenin Egor Viktorovich</option>
- <option value = "3">Mashkina Elena Ivanovna</option>
- <option value = "4">Rihtor Pavel Maksimovich</option>
- <option value = "5">Kulman Irina Pavlovna</option>
- </select>
- <button>Показать</button>
- </form>
- </div>
- </body>
- </html>
- Отображение в браузере
[pic 5]
- Запрос 1
- Mysqli
- <head>
- <title>Результат запроса</title>
- <meta charset="utf-8">
- </head>
- <body>
- <h2>Результат запроса</h2>
- <?php
- $mysqli = new mysqli("kdenisb.ru:23306", "stud20", "Zz8Gws4Vv", "stud20_Islamov3LR");
- if ($mysqli->connect_errno) {
- printf("err con: %s\n", $mysqli->connect_error);
- exit();
- }
- $result = $mysqli->query("SELECT `name`, `doctorFio`, `patientFio` FROM `Purpose` JOIN `Doctor` ON `doctor_id` = `Doctor`.`id` JOIN `Drug` ON `drug_id`= `Drug`.`id` JOIN `Patient` ON `patient_id` = `Patient`.`id` WHERE `name` = '".$_GET[Drug]."';");
- ?>
- <br><table border = 1>
- <?php
- while( $row = $result->fetch_array(MYSQLI_ASSOC) )
- {
- printf("<tr><td>%s</td><td>%s</td><td>%s</td></tr>", $row["name"], $row["doctorFio"], $row["patientFio"]);
- }
- ?>
- </table>
- <?php
- $result->close();
- $mysqli->close();
- ?>
- <br>
- <a href="index.html">Назад</a>
- </body>
[pic 6]
- PDO
- <head>
- <title>Результат запроса</title>
- <meta charset="utf-8">
- </head>
- <body>
- <h2>Результат запроса</h2>
- <?php
- $bdd=new PDO('mysql:host=kdenisb.ru;port=23306;dbname=stud20_Islamov3LR',
- "stud20", "Zz8Gws4Vv");
- ?>
- <br><table border = 1>
- <?php
- foreach($bdd->query("SELECT `name`, `doctorFio`, `patientFio` FROM `Purpose` JOIN `Doctor` ON `doctor_id` = `Doctor`.`id` JOIN `Drug` ON `drug_id`= `Drug`.`id` JOIN `Patient` ON `patient_id` = `Patient`.`id` WHERE `name` = '".$_GET[Drug]."';") as $row)
- {
- printf("<tr><td>%s</td><td>%s</td><td>%s</td></tr>", $row["name"], $row["doctorFio"], $row["patientFio"]);
- }
- ?>
- </table>
- <a href="index.html">Назад</a>
- </body>
[pic 7]
- Запрос 2
- Mysqli
- <head>
- <title>Результат запроса</title>
- <meta charset="utf-8">
- </head>
- <body>
- <h2>Результат запроса</h2>
- <?php
- $mysqli = new mysqli("kdenisb.ru:23306", "stud20", "Zz8Gws4Vv", "stud20_Islamov3LR");
- if ($mysqli->connect_errno) {
- printf("err con: %s\n", $mysqli->connect_error);
- exit();
- }
- $result = $mysqli->query("SELECT `doctorFio`, `specialization` FROM `Purpose` JOIN `Doctor` ON `doctor_id` = `Doctor`.`id` WHERE `patient_id` = '".$_GET[Patient]."';");
- ?>
- <br><table border = 1>
- <?php
- while( $row = $result->fetch_array(MYSQLI_ASSOC) )
- {
- printf("<tr><td>%s</td><td>%s</td></tr>", $row["doctorFio"], $row["specialization"]);
- }
- ?>
- </table>
- <?php
- $result->close();
- $mysqli->close();
- ?>
- <br>
- <a href="index.html">Назад</a>
- </body>
[pic 8]
- PDO
- <head>
- <title>Результат запроса</title>
- <meta charset="utf-8">
- </head>
- <body>
- <h2>Результат запроса</h2>
- <?php
- $bdd=new PDO('mysql:host=kdenisb.ru;port=23306;dbname=stud20_Islamov3LR',
- "stud20", "Zz8Gws4Vv");
- ?>
- <br><table border = 1>
- <?php
- foreach($bdd->query("SELECT `doctorFio`, `specialization` FROM `Purpose` JOIN `Doctor` ON `doctor_id` = `Doctor`.`id` WHERE `patient_id` = '".$_GET[Patient]."';") as $row)
- {
- printf("<tr><td>%s</td><td>%s</td></tr>", $row["doctorFio"], $row["specialization"]);
- }
- ?>
- </table>
- <a href="index.html">Назад</a>
- </body>
[pic 9]
- Запрос 3
- Mysqli
- <head>
- <title>Результат запроса</title>
- <meta charset="utf-8">
- </head>
- <body>
- <h2>Результат запроса</h2>
- <?php
- $mysqli = new mysqli("kdenisb.ru:23306", "stud20", "Zz8Gws4Vv", "stud20_Islamov3LR");
- if ($mysqli->connect_errno) {
- printf("err con: %s\n", $mysqli->connect_error);
- exit();
- }
- $result = $mysqli->query("SELECT `patientFio`, `height` FROM `Purpose` JOIN `Patient` ON `patient_id` = `Patient`.`id` WHERE `doctor_id` = '".$_GET[Doctor]."' ORDER BY `height` DESC LIMIT 1;");
- ?>
- <br><table border = 1>
- <?php
- while( $row = $result->fetch_array(MYSQLI_ASSOC) )
- {
- printf("<tr><td>%s</td><td>%s</td></tr>", $row["patientFio"], $row["height"]);
- }
- ?>
- </table>
- <?php
- $result->close();
- $mysqli->close();
- ?>
- <br>
- <a href="index.html">Назад</a>
- </body>
[pic 10]
- PDO
- <head>
- <title>Результат запроса</title>
- <meta charset="utf-8">
- </head>
- <body>
- <h2>Результат запроса</h2>
- <?php
- $bdd=new PDO('mysql:host=kdenisb.ru;port=23306;dbname=stud20_Islamov3LR',
- "stud20", "Zz8Gws4Vv");
- ?>
- <br><table border = 1>
- <?php
- foreach($bdd->query("SELECT `patientFio`, `height` FROM `Purpose` JOIN `Patient` ON `patient_id` = `Patient`.`id` WHERE `doctor_id` = '".$_GET[Doctor]."' ORDER BY `height` DESC LIMIT 1;") as $row)
- {
- printf("<tr><td>%s</td><td>%s</td></tr>", $row["patientFio"], $row["height"]);
- }
- ?>
- </table>
- <a href="index.html">Назад</a>
- </body>
[pic 11]
Ссылка для проверки: http://kdenisb.ru:20080/web/Islamov/lab3/index.html
...