- •Лабораторная работа 12 (4 часа) Работа с формами в php
- •Теоретические сведения Основы клиент-серверных технологий
- •Форма запроса клиента
- •Метод get
- •Метод head
- •Метод post
- •Использование html-форм для передачи данных на сервер
- •Для метода get
- •Для метода post
- •Обработка запросов с помощью php
- •Пример обработки запроса с помощью php
- •Порядок выполнения работы Задание 1
- •Задание 2
- •Индивидуальные задания
- •Отчет о выполненной работе должен содержать:
- •Вопросы к защите лабораторной работы
Пример обработки запроса с помощью php
Нужно написать обработчки формы (см. выше) для регистрации участников заочной школы программирования и после регистрации отправить участнику сообщение.
|
|
Следует отметить, способ передачи значений элемента checkbox. Когда мы пишем в имени элемента kurs[], это значит, что первый отмеченный элемент checkbox будет записан в первый элемент массива kurs, второй отмеченный checkbox – во второй элемент массива и т.д. Можно, конечно, просто дать разные имена элементам checkbox, но это усложнит обработку данных, если курсов будет много.
Скрипт, который все это будет разбирать и обрабатывать, называется 1.php (форма ссылается именно на этот файл, что записано в ее атрибуте action). По умолчанию используется для передачи метод GET, но мы указали POST. По полученным сведениям от зарегистрировавшегося человека, скрипт генерирует соответствующее сообщение. Если человек выбрал какие-то курсы, то ему выводится сообщение о времени их проведения и о лекторах, которые их читают. Если человек ничего не выбрал, то выводится сообщение о следующем собрании заочной школы программистов (ЗШП).
|
|
Для выполнения заданий лабораторной работы нужно знать:
типы данных РНР
правила определения переменных;
операторы РНР;
особенности использования функций;
способы доступа к объектам HTML-страницы;
особенности обращения к отдельным элементам формы (например, спискам SELECT, переключателям RADIO и т. д.).
Порядок выполнения работы Задание 1
Создать html-файл lab12.html, который будет содержать форму с двумя полями для ввода чисел и переключатель, который будет определять, какое действие надо выполнить с числами (сложить или перемножить):
<form method="post" action="lab12_1.php"> а:<input type="text" name="a" size="3"> +<input type="radio" name="diya" value="plus">или *<input type="radio" name="diya" value="umnozh"> b:<input type="text" name="b" size="3"><br> <input type="submit"> </form>
Сохраните файл на своем сервере и проверьте его работоспособность.
Создать php-файл lab12_1.php который будет обрабатывать информацию введенную форме. В зависимости от выбранного положения переключателя выполнить соответствующее действие. Добавить в документ ссылку для возврата на предыдущую страницу
<? if ($_POST['diya']=='plus') { $c=$_POST['a']+$_POST['b']; echo "сумма чисел = $c"; } else { $c=$_POST['a']*$_POST['b']; echo "произведение чисел = $c"; } echo "<br><a href='/lab11.htm'> Перейти на предыдущую страницу</a>"; ?>
Создать новый файл, в который включить форму, содержащую следующие данные:
Создать php-файл по обработке данной страницы, результат вывести в формате: Уважаемый(ая) Иванов Сергей. Мы рады приветствовать вас на наших курсах. Надеемся на дальнейшее (продолжение) сотрудничество.
Создать php-файл который будет формировать страничку на основании данных формы.