Лабораторная работаПрограммированиеГод: 2025
👁 13💼 0

Готовая лабораторная: Базы данных в web‑приложениях

Загружена: 23.02.2026 14:52

Практическое руководство по созданию реляционных баз данных и их использованию в PHP web‑приложениях. Описаны структуры таблиц, готовые SQL‑запросы и PHP‑скрипты (mysqli и PDO). Полезно для отработки форм ввода, JOIN и подготовленных запросов.

Содержание

Лабораторная работа 4 
Тема 4. Основы работы с базами данных в web-приложениях.
Задание
Лабораторные работы выполняются :
На локальном сервере. Например OpenServer, XAMPP или Denwer.
Использовать базу данных MySQL (можно PostgreSQL)

Создайте программу на языке PHP в соответствии с вариантом задания. Программа PHP это текстовый файл с расширением .php. Писать код можно в любом текстовом редакторе, но предпочтение следует отдавать редакторам, которые подсвечивают синтаксис языков программирования. Например Notepad++.
Запустите локальный сервер.
Скопируйте созданный файл со скриптом в соответствующую папку на сервере.
Запустите созданную программу в браузере. Проверьте работу программы на различных наборах исходных данных так, чтобы были пройдены все ветви алгоритма.

Лабораторная работа 4 «Работа PHP с базой данных»

1.	Создать БД с тремя полями: 
•	адрес электронной почты (50 символов),
•	текст сообщения (250 символов),
•	дата и время отправления.
Написать программу, с помощью которой пользователи могут заполнить эту БД.
Написать программу, выводящую информацию из БД

Подробное описание

📘 О чем эта работа

Лабораторная посвящена основам взаимодействия PHP‑скриптов с реляционными СУБД (MySQL/PDO). Объектом являются простые прикладные базы (контактная форма, книги, автомобили, студенты, отели, адреса); предмет — проектирование таблиц, SQL‑запросы и реализация CRUD‑форм на PHP.

📚 Что внутри

В комплекте содержатся конкретные схемы БД, примеры SQL‑команд и готовые PHP‑файлы для запуска на локальном сервере (OpenServer/XAMPP):

  • Контактная форма: SQL 'CREATE DATABASE contact_form;' и таблица messages (email VARCHAR(50), message TEXT, sent_at DATETIME DEFAULT CURRENT_TIMESTAMP) плюс файлы write_db.php и read_db.php с использованием mysqli и подготовленных запросов.
  • Хранение книг: предложение структуры authors и books, пример вставки автора и книги через add_to_db.php; в работе обсуждается задача множественных соавторов и приводится рекомендация создать связующую таблицу book_authors для реализации связь many‑to‑many.
  • Автомобили и производители: схема tables colors, manufacturers, cars; пример заполнения цветов/производителей и интерфейс add_to_db.php с выбором производителя и цвета; вывод двухуровневого списка с сортировкой по производителю и названию авто.
  • Студенты и группы: таблицы student_groups и students, вывод групп в алфавитном порядке и студентов внутри; логика подсчета численности группы и выделение CSS классом 'small-group' при численности <5 реализована в task.php.
  • Отели и страны: таблицы countries и hotels, поле price_per_day DECIMAL(10,2) и пример выборки через PDO с ORDER BY countries.name, hotels.price_per_day, hotels.name; вывод строкового формата 'Страна ‒ ... Стоимость в евро ‒ ... Название отеля ‒ ...'.
  • Улицы и адреса: таблицы streets и addresses, вывод двухуровневого списка и итоговой строки 'Всего адресов: [N]'.
  • Практические приёмы: использование mysqli->prepare и bind_param, PDO с исключениями, JOIN (INNER/LEFT), GROUP BY + HAVING для фильтрации (например, книги с ровно 3 соавторами), сортировка и агрегация.

📊 Для кого подходит

Студентам профильных направлений по специальностям прикладная информатика, программная инженерия и веб‑разработке. Полезно на курсах 'Web‑программирование' и 'Базы данных' для отработки форм ввода, подготовки запросов и связей между таблицами.

✨ Особенности

Готовые SQL‑скрипты для создания БД и таблиц, примеры вставки и выборки, практические PHP‑формы с проверкой POST и подготовленными выражениями. Приведены примеры как для mysqli (write_db.php, read_db.php), так и для PDO (task.php для hotel_db, address_db) с примером DSN и опций PDO::ATTR_ERRMODE = PDO::ERRMODE_EXCEPTION.

Включены практические сценарии: реализация many‑to‑many через промежуточную таблицу book_authors (рекомендация для корректного хранения соавторов), формирование отчёта 'книга — количество соавторов' с использованием COUNT(*) и HAVING, подсветка малых групп CSS‑классом 'small-group'.

❓ Частые вопросы

Подойдет ли для моего ВУЗа?
Структура заданий и примеры SQL соответствуют общим требованиям лабораторных работ по базам данных: сначала DDL (CREATE DATABASE/TABLE), затем вставка примеров и интерфейс на PHP для CRUD.

Можно ли адаптировать?
Да. Скрипты написаны на стандартном PHP с mysqli и PDO; достаточно изменить параметры подключения (host/user/password/dbname), при необходимости заменить типы полей или добавить индексы/ограничения для конкретных требований.

Дополнительно в тексте указаны ссылки на документацию PHP и учебные пособия по веб‑разработке для углубления (PHP Manual, Metanit, учебники издательства Юрайт), а также рекомендации по запуску на локальном сервере (копирование .php файлов в корень сервера и проверка в браузере на разных наборах входных данных).