Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Тема №2. Передача значений переменным в сценариях PHP. Использование возможностей метода GET без HTML-формы для передачи значений переменных в сценариях PHP




Цель работы: Получение практических навыков по передаче значений переменным в сценариях РНР с использованием формы и с помощью метода GET.

Задание 1: Разработать приложение с использованием метода GET, в котором:

Создается форма ввода (см. рис. 3.5.) помощью программы Lab2.php (см. рис. 3.6.) для введения пользователем данных:

· Имени;

· Фамилии;

· Адреса электронной почты;

· Текста - комментария.

Введенные данные PHP-сценарий Lab2_result.php получает данные с формы.

· Отображает извлеченные из формы данные в окне браузера.

· Сценарий должен сгенерировать отправку данных в другой PHP-файл, который в свою очередь должен отобразить персональное приветствие пользователю.

Имена использоаванных и взаимосвязанных файлов: Lab2.php (описание и создание формы – рис. 3.6.), Lab2_result.php (обработчик событий для Lab2.php), Lab2_GET.php (использование метода Get)

 

В форму созданную с помощью Lab2.php (описание и создание формы) введите, например следующую информацию (рис. 3.5.)

Рис. 3.5. Форма с обработчиком на кнопке “OK”.

 

Исходный код Lab2.php (создание формы).

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 4.01

Transitional//EN"

"http://www.w3.org/TR/html4/loose.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />

<title>Lab2</title>

</head>

 

<body bgcolor=#CCFFFF>

<form action="Lab2_result.php" method="POST">

<!--Lab2_result.php Обработчик для данной HTML формы. -->

<!--В указании имени method надо указывать ковычки!!! -->

<table>

<tr>

<td> Введите Ваше имя: <br></td><!--имя атрибута на экране-->

<td><input type=text name="FName" size=20></td>

</tr>

<tr>

<td>Last Name</td><!--имя атрибута на экране-->

<td><input type=text name="LName" size=20></td>

</tr>

<tr>

<td>E-mail</td><!--имя атрибута на экране-->

<td><input type=text name="Email" size=40></td>

</tr>

<tr>

<td> Примечание </td><!--имя атрибута на экране-->

<td><textarea name="Comments" rows=5 cols=40></textarea></td>

</tr>

</table>

<input type=submit name="Submit" value="OK">&nbsp;

<input type=reset name="Reset" value="Очистить">

<!-- Нажатие кнопки name="Submit" с именем value="OK" приведет к вызову обработчика данной формы (к аналогичному действию приведет нажатие Enter на любом из полей). Нажатие кнопки name="Reset" с значением value="Cancel" (Очистить) приведет к уничтожению всех объявленных переменных в форме.

&nbsp - непрерывный пробел

Веб-браузеры обычно игнорируют дополнительные символы пробела, введенные в текст страницы. Для этого используется команда &nbsp. Эта команда создает неделимое пустое пространство между элементами страницы, будь то графика или текст. Следует учитывать тот факт, что использование &nbsp вместо пробела между двумя соседними словами гарантирует, что оба слова не будут разнесены по разным строкам в окне браузера - они будут расположены всегда рядом.

-->

</form>

</body>

</html>

Рис. 3.6. Код создания формы для рис. 3.5. Нажатие , (на выше показанной форме рис. 3.5) приводит к следующему результату в окне браузера (рис. 3.7). Отметьте, что имя программы обработчика в адресной строке будет сформировано автоматически. Рис. 3.7. Результат обработки события после нажатия кнопке “OK” на рис. 3.5.

 

Код программы (Lab2_result.php), который приводит к этому результату приведен ниже (рис. 3.8).

 

Lab2_result.php (обработчик для кнопки “OK”)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 4.01 Transitional//EN"

"http://www.w3.org/TR/html4/loose.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />

<title>Lab2_обработчик</title>

Информация попадает в обработчик - программа Lab2_result.php

</head>

 

<body bgcolor=#FFFFFF><!--Цвет фона белый-->

<?PHP

print("<br>В обработчике переменные из HTML кода Lab2.php напрямую не доступны! <br>");

print("Имя переменная FName is: $FName <br>");

print("Указана фамилия is: $LName <br>");

print("e-mail is: $Email <br>");

print("Комментарий: $Comments <br>");

 

print("Через массив POST переменные наверняка будут доступны<br>");

 

$FName = $_POST["FName"];

print("Имя FName $FName передано через глобальный POST: $_POST[FName] <br>");

//а как указано ниже - даст ошибку

//print("Имя FName $FName передано через глобальный POST:

//$_POST['FName'] <br>");

 

print("Указана фамилия is: $_POST[LName] <br>");

print("e-mail is: $_POST[Email] <br>");

print("В примечании указано $_POST[Comments] <br>");

 

print("Click <a href=Lab2_GET.php?FName=$FName&LName=$_POST[LName]>here</a> здесь, чтобы посмотреть как работает метод GET");

//После знака '?' перечислены переменные, которые должны быть

//доступны в программе Lab2_GET, которая вызывается по ссылке,

//если пользователь кликнет на слове here, то будет вызвана

//программа Lab2_GET.php с указанными переменными

//Слово here может быть заменено на смысловое русское слово

 

?>

</body>

</html>

Рис. 3.8. Код программы обработки события на кнопке “OK”.

Если выполнить действие

то будет вызвана программа Lab2_GET.php (рис. 3.10.) результат (рис. 3.9) и исходный код, которой приведен ниже.

Рис. 3.9. Результат обработки события по ссылке HERE.

Обратите внимание на содержимое адресной строки при выводе результата.

 

 

 

Код Lab2_GET.php

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 4.01 Transitional//EN"

"http://www.w3.org/TR/html4/loose.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />

<title>Lab2_GET</title>

</head>

<body>

<?PHP

//реакция при нажатии на ссылку, см. файл Lab2_GET.php слово Here

$FName = $_GET['FName'];

$LName = $_GET['LName'];

print("<center> Hello из Lab2_GET Имя:'$FName' Фамилия: ' $LName '!!!</center>");

//А так будет ошибка print("<center> Hello из Lab2_GET Имя $FName $Lname!!!</center>");

?>

</body>

</html>

Рис. 3.10. Исходный код программы Lab2_GET.php.

 

В данной лабораторной работе были получены практические навыки по передаче данных в РНР-сценарий с помощью HTML-форм и с помощью метода GET.

 




Поделиться с друзьями:


Дата добавления: 2014-12-07; Просмотров: 1048; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.033 сек.