ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 16.05.2024
Просмотров: 19
Скачиваний: 0
Лабораторна робота № 5
ТЕМА: Основи розмітки сторінок НТМL. Елементи вводу інформації у Web сторінках. Взаємодія РНР-сценаріїв з формами
МЕТА: познайомитися з основами розмітки сторінок НТМL, елементами вводу інформації у Web-сторінках та основами взаємодії РНР-сценаріїв з формами
Теоретичний розділ
Форми HTML мають містити наступні елементи:
-
метод;
-
дію;
-
кнопку для пересилання форми (Submit).
В HTML-коді перший рядок для форми буде виглядати приблизно так:
<form method="post" action="yorscript.php">
Після клацання мишею на кнопці для пересилання HTML-форми, змінні будуть послані програмі, зазначеній в параметрі action =, за допомогою методу, зазначеного в параметрі method =.
Атрибут Action визначає розташування й ім'я сторінки, на яку посилається інформація з форми для обробки. Якщо сторінка, що буде обробляти дані, перебуває в тім же каталозі, що й утримуюча форму сторінка, то URL у параметрі Action є просто ім'ям цієї сторінки. Інакше це може бути повний URL, що визначає адресу Web на іншому сервері або в іншому каталозі на тім же сервері..
Атрибут method може приймати одне з двох значень – GET або POST. Він визначає спосіб, використовуваний для пересилання дані форми на сторінку, де вони будуть оброблятися. Існує два методи на вибір.
Метод GET є більше старим способом пересилання даних. У цьому випадку дані з форми приєднуються наприкінці URL сторінки, на яку посилають дані (URL в атрибуті action ). Дані форми складаються з текстового рядка, що з'єднується з URL за допомогою знака питання (?). Ви могли бачити, як це відбувається, при відвідуванні Web. Цей метод не є кращим при відправленні даних форми, тому що існує обмеження на кількість символів, що посилаються, і дані погано захищені від стороннього перегляду, коли вони з'являються в полы адреси URL у браузері. Ми будемо надалі в деяких випадках використати цей метод.
Метод POST почасти вирішує ці проблеми. Він посилає дані форми на сторінку action як окремий потік даних, що не з'являється в полы адреси браузера, крім того, можна посилати будь-яку необхідну для обробки форми кількість символів. Якщо немає спеціальних причин, завжди використовують метод POST.
Змінні, передані з форми в сценарій РНР, заносяться в глобальний асоціативний масив $http_post_vars або $http_get_vars залежно від методу, зазначеного у формі. Вони автоматично стають доступними для програми.
Завдання: створити веб-сторінку форми замовлення та обробник, що зчитує введені в форму дані і виводить у окремому вікні браузера інформацію про замовлення тачас обробки замовлення.
Порядок виконання завдання:
-
Створіть форму введення заказа фірми з продажу автозапчастин, її вигляд зображено на малюнку 5.1
Малюнок 5.1 – Форма введення заказа
-
Для цього видкрийте програму Блокнот та запишіть наступний текст:
-
Збережіть отриманий файл в домені (каталозі) Lab5.loc під ім’ям Form.html.
-
Для обробки форми за допомогою програми Блокнот в папці Lab5.loc створіть сценарій під назвою processorder.php. Для цього введіть наступний код:
-
Збережіть отриманий файл та завантажте його в свій браузер, потім заповніть форму та клацніть по кнопці “Ввести замовлення”. В загальному випадку значення атрибута ACTION є URL-адресою, яка буде завантажуватися при натисканні користувачем кнопки “Ввести замовлення” (submit). Данні, введені користувачем в форму, будуть відправлятися за цією URL-адреси з використанням методу, який вказаний в атрибуті METHOD: POST – в цьому випаду данні відправляються у вигляді окремого пакету.
-
У вікні браузера повинно відобразитися наступне (мал. 5.2):
Малюнок 5.2 - Результат обробки РНР сценарія в вікні браузера
-
Додайте динамічного вмісту. Для цього в збережений сценарій внесіть наступні зміни:
-
В цьому коді вбудована PHP-функція date() використовується для повідомлення клієнту дати та часу обробки заказа. Це значення буде змінюватися при кожному виконанні сценарія.
-
Аргумент, який передається в функцію date(), повинен бути рядком формату, який задає потрібний стиль виводу. Кожна літера в рядку є частиною рядка дати та часу. Н є годинами в 12-годинному форматі, i — хвилини з ведучим нулем, якщо це потрібно, j — день місяця без ведучого нуля, S є звичайним суфіксом (в данному випадку «th»), a F – рік, який представленний чотирма цифрами.
-
В результаті у вікні браузера повинно відобразитися наступне (мал.5.3):
Малюнок 5.3 – Результат виводу функції date()
Завдання для самостійного виконання:
-
Додайте до вашої форми ще декілька елементів форми. Змініть код рнр-скрипта, щоб у вікні браузера також виводило назву та кількість замовлених товарів.
-
Тепер помістіть на форму замовлення елемент "прапорець". Змініть текст попереднього коду так, щоб вивести на екран той виріб замовлення, який помічений галочкою.