Лабораторная работа № 7

Введение в web-программирование. Разработка клиентского интерфейса базы данных

Цель: Создать базу данных с использованием СУБД MySQL, разработать простейшее веб-приложение с помощью языка программирования PHP.

Оборудование и ПО: ПК, настроенный сервер с установленным ПО (Apache 2.4, MySQL 8.0 , PHP 5.6), putty 0.7 (для организации ssh-соединения с сервером), FileZilla 3.37 (для ftp-соединения с сервером). На сервере должна находиться база данных internet_shop с указанными спецификациями таблиц (см. рис. 7.1). Помимо этого, необходимо настроить символьные ссылки для директорий студентов на сервере. IP_ADDRESSip-адрес сервера. Записи std<номер> должны соответствовать учетным записям на сервере. Все данные для организации доступа (ip-адрес, логин и пароль для доступа к серверу и интерпретатору MySQL) предоставляются преподавателем.

Содержание отчёта: Отчёт представить в виде архивного файла, в который включить листинг веб-приложения и отчёт в виде документа MS Word Фамилия-лаб7.docx.

Задачи:

1. Осуществить SQL-запросы к базе данных internet_shop для выборки и добавления записей.

2. Реализовать подключение к указанной базе средствами языка PHP.

3. Разработать пользовательский интерфейс средствами HTML и CSS для работы с БД internet_shop.

Ход работы:

Ознакомьтесь с необходимым для выполнения лабораторной работы материалом можно, перейдя по нижеприведённым ссылкам:

·        о командах MySQL;

·        о доступе к MySQL с помощью PHP;

·        о HTML-тегах, CSS-тегах.

1. Изучите БД internet_shop, ознакомьтесь с основными таблицами. Осуществите запросы на выборку и добавление данных в соответствующие таблицы. Перечислите использованные запросы, включив их описание в отчет.

Используя ssh-клиент putty, подключитесь к web-серверу, используя ip-адрес, логин и пароль, предложенные преподавателем.

После подключения к серверу используйте команду

mysql --user=student —password ИЛИ mysql –u student –p

для активации интерпретатора команд MySQL.

После этого выберите базу данных internet_shop, введя следующую sql-команду:

use internet_shop

Просмотрите структуру базы данных, введя команду:

show tables;

Просмотрите структуру конкретной таблицы, введя команду:

show columns from <название_таблицы>;

Осуществите следующие операции вставки в БД:

1.1 Добавьте производителя(-ей);

1.2 Добавьте несколько новых товаров по Вашему желанию;

1.3 Добавьте нового клиента;

1.4 Добавьте новый заказ, произведенный добавленным в пункте 1.3 клиентом с включенными в него товарами из пункта 1.2.

1.5. Добавьте записи в таблицу orders_summary, соответствующие заказу из пункта 1.4.

Осуществите следующие операции выборки из БД:

1.6. Выберите всех клиентов и отобразите следующие поля запроса: имя, фамилия, пол и логин.

1.7. Выберите всех клиентов-женщин с телефоном, начинающимся на цифру 2.

1.8. Выберите всех клиентов-мужчин, имеющих в логине букву f, упорядочите их по алфавитному порядку их логинов (в порядке возрастания).

1.9. Выберите всех клиентов, оформивших заказ заданного числа.

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

1.11. Выберите все заказы и отобразите включенные в них товары и их количество, оформленные на заданную общую сумму не позднее заданного числа.

1.12. Определите общее количество товаров, представленных заданным производителем.

Вставка в базу данных выполняется с помощью команды INSERT INTO, выборка – SELECT.

2. Организовать подключение к СУБД MySQL при помощи функций PHP.

Перейдите в свою домашнюю папку на сервере. Создайте в ней директорию html и создайте внутри файл index.php с произвольным содержимым:

Сохраните полученный файл. Откройте любой браузер по желанию и введите в адресной строке IP_ADDRESS/std<номер>, где <номер> - это последние цифры в вашей учетной записи.

Убедитесь в корректности результата. Отредактируйте файл index.php таким образом, чтобы при его открытии в браузере отображалась информация об интерпретаторе команд PHP.

После обновления страницы вы увидите информацию об установленном интерпретаторе php на сервере.

Организуйте соединение с БД internet_shop, расположенной на сервере и сформулируйте запросы для выборки данных из таблиц этой БД, используя функции языка PHP.

Поместите данные в ассоциативный массив и отобразите их на клиентской стороне.

3. Используя функции и структуры языка PHP, пользовательский интерфейс, разработанный с использованием языка гипертекстовой разметки HTML и стилевых файлов CSS, организуйте выборку данных о заказах и их отображение посредством созданного интерфейса.


Приложение. Спецификация БД internet_shop

 

33_01.png

Рисунок 7.1 Структура БД internet_shop

Текстовое описание БД, включающее расшифровку назначения определенных полей БД.

Таблица Клиенты (clients)

cl_id — индекс

firstNameимя

lastNameфамилия

sexпол

nickName — логин

phone — телефон

email — электронная почта

Таблица Продукты (products)

pr_id — индекс

name — название

price — цена за единицу

man_id — производитель (внешний ключ)

 

Таблица Производители (manufacturers)

man_id — индекс

name — название

establish_date — дата основания

 

Таблица Заказы (orders)

ord_id — индекс

cl_id — клиент (внешний ключ)

date_of_order — дата заказа

total_sum — общая сумма заказа

 

Таблица Сведения О Заказах (orders_summary)

ord_s_id — индекс

ord_id — заказ (внешний ключ)

pr_id — продукт (внешний ключ)

count — количество единиц продукта