Лабораторная работа №5 Тема: Использование элементов управления, cookie, сессии. Работа с почтой

Лабораторная работа №5 Тема: Использование элементов управления, cookie, сессии. Работа с почтой


Скачать 117.15 Kb.
Название Лабораторная работа №5 Тема: Использование элементов управления, cookie, сессии. Работа с почтой
Тип Лабораторная работа
rykovodstvo.ru > Руководство эксплуатация > Лабораторная работа
Лабораторная работа №5

Тема: Использование элементов управления, cookie, сессии. Работа с почтой.

1. Запустите файл из папки лабораторной работы №7 для установки Denver. Внимательной следуйте инструкциям программы – установки. Установку сервера осуществите на диск D.

2. Перейдите в папку ...\webserver\home (webserver - папка, в которой установлен Денвер, у вас она может называться по-другому), создаем папку, в которой будет сайт. В этой папке создаем еще одну с названием www и создаем файл с расширением .php. Php-скрипты можно вставлять в html-код. Код обрабатываемый php - интерпретатором отделяется: .

Команда echo - это инструкция серверу вывести текст, который стоит после нее в кавычках.

Переменная служит контейнером и именем для данных. С того момента, как вы присвоили переменной некоторое значение, PHP всегда, встретив эту переменную, заменит ее на приписанное значение. Обратите внимание на то, что каждая строка заканчивается точкой с запятой. Для объединения или конкатенации двух текстовых элементов используется точка. Вы можете объединить таким образом любое число строк или текстовых элементов.

Имена переменных в PHP чувствительны к регистру, то есть, $UserName и $username -- это две совершенно различные переменные.

Создание и использование форм в PHP

Создается форма с использованием HTML, затем пользователь вводит данные в эту форму и инициирует ее передачу, браузер пересылает данные серверу в форме массива.

Для начала создадим страницу регистрации для приложения. На этой странице пользователи будут вводить свои данные. Создадим новый файл registration.php и поместим в него следующий текст:



Таким образом, мы создали простую форму, которая содержится внутри HTML-тега form, в ней есть текстовые поле для ввода пароля, email, пароля и клавиша для отсылки данных.

В элементе
определено два параметра: action, сообщает браузеру куда посылать информацию. В нашем случае ссылка ведет к файлу registration_action.php. Второй параметр, method, сообщает браузеру как передавать данные.

В операторе define задается пара: имя константы и ее значение. Вы можете присваивать константам произвольные имена, но, согласно принятым правилам, имена констант состоят из прописных букв.

Рассмотрим, каким образом данные, введенные в HTML-форму, можно сделать доступными в принимающей PHP-странице. Внесите следующие изменения в файл registration_action.php:



Рассмотрим пример с использованием дополнительных элементов управления, таких как: поле со списком, переключатель. Реализуйте пример, который в зависимости от выбранного типа товара и указания, есть ли дисконтная карта, рассчитывает стоимость покупки.

Код HTML- формы:



Создайте файл с именем pr.php со следующим программным кодом:



Рассмотрим пример с использованием элемента управления радиокнопка и использование метода POST для передачи данных между формами.



Создадим рнр файл для обработки данных, полученных из формы.



Задание: Дополните программный код, если пользователь не ввел своего имени, выводится текст «Привет, незнакомец!».

Рассмотрим пример создания формы с контактной информации с использованием функции mail, которая имеет следующий синтаксис:

mail(куда, тема сообщения, сообщение);

Сначала создаём HTML-форму:



Создадим файл с именем handler.php, который содержит следующий программный код:



Работоспособность скрипта следует проверять у хостинг провайдера. Если проверку делать на локальном сервере, письма доходить не будут. В Денвер есть возможность проверки работоспособности отправки сообщений. Эти сообщения складываются в директории локального сервера : \tmp\!sendmail

Сессии

При посещении сайта вы выполняете различные действия. Переходите с одной страницы на другую. Возможно, заполняете форму или покупаете что-то. Возникает необходимость в сохранении значении переменных, состояния объектов в момент просмотра пользователем страницы или в момент перемещения пользователя по страницам сайта. РНР-сессии дают возможность работать с информацией о пользовательской сессии. Вы можете создавать приложения, которые идентифицируют и собирают информацию о пользователях. Скажем, 50 пользователей просматривают страницы одного сайта, например, интернет магазина. Информацию о том, что у каждого посетителя в корзине, лучше всего сохранить в сессии. Чтобы идентифицировать пользователей, сервер использует уникальные пользовательские идентификаторы/user ID, которые хранятся в cookie . Следовательно, сессии часто требуют поддержки cookie в браузерах пользователей.

Рассмотрим пример, в котором будем сохранять имя пользователя, вошедшего на сайт, и будем осуществлять подсчет количества посещений страницы, которую может просматривать только пользователь, который ввел правильный логин и пароль.

Сессии могут начинаться разными способами. Мы рассмотрим вариант, когда сессия начинается с сохранения значения. Сессия заканчивается, если пользователь не запрашивает страниц в течение какого-то времени (стандартное значение - 20 минут) или пользователь закрывает окно браузера. В любой момент можно принудительно закончить сессию вашем скрипте, используя функцию session_destroy();

Пример использования сессий. Создадим страницу с полями для аутентификации.



Создадим файл login2.php со следующим программным кодом:



И страницу document.php, которая открывается только для зарегистрированного пользователя.



Регистрация новой сессионной переменной происходит при вызове функции session_register(), которая принимает одно или несколько текстовых переменных, значения которых - название будущей сессионной переменной.

Чтобы обратиться к сессионной переменной, необходимо использовать суперглобальный массив $_SESSION.

Теперь решим задачу подсчета персональных посещений пользователей с помощью cookie.

Cookie

Cookie это небольшой текстовый файл, в котором сайт может хранить различную информацию. Cookie сохраняются на жёстком диске пользователей, а не на сервере. Cookie записывается сервером на компьютер посетителя. В дальнейшем эту информацию можно извлечь, причем сделать это может только тот сервер, который записал ее туда. Информация ограничена размером 4 килобайта. Есть ограничения по времени существования cookie, по их количеству и т.д. Срок годности большинства Cookie истекает после предопределённого периода времени (они самоудаляются), и этот период может варьироваться от одной минуты до нескольких лет. Но пользователь и сам может удалять любые Cookie на своём компьютере.

Многие сайты очень активно используют ее для сбора информации о своих клиентах, их предпочтениях, настройках и т.д. Для примера представьте себе форум, в котором нужно обязательно указывать имя, адрес или другую информацию. Обычно все это приходится каждый раз вводить заново, а с помощью cookie все данные можно запомнить на компьютере клиента и при следующем посещении форума их извлечь и воспроизвести в форме. Еще проще — один раз запомнить имя посетителя, и каждый раз приветствовать его по имени.

Самый простой способ установить cookie с помощью РНР — это использовать специальный оператор:

setcookie('name', '12345');

Теперь, пока не будет закрыто окно браузера пользователем, переменную $name со значением равным числу 12345 можно считать с помощью другого оператора:

isset ($_COOKIE["name"]);

Часто делают сразу проверку, установлена или нет соответствующая переменная, и на основе полученных результатов принимают решение, что делать дальше:

If (isset ($_COOKIE["name"]);)) { … установлена … } else { … нет … }

Надо помнить, что установленный таким образом cookie живет только до тех пор, пока не закрыто окно браузера, его породившее.

Как только пользователь закрывает окно, установленная переменная уже не доступна. Это так называемый сессионный cookie. Впрочем, совсем не сложно продлить срок жизни cookie до нужного времени. Делается это с помощью третьего параметра оператора setcookie, который указывает дату истечения срока действия cookie либо срок его действия, если число меньше, чем дата установки:

$y = mktime(0,0,0,1,1,2012);

setcookie($_COOKIE["name"]);, 'bret', $y);

Перед тем, как задать третий параметр, его нужно сформировать специальной функцией. Дело в том, что в РНР этот параметр указывает на количество секунд, прошедшее после 1 января 1970 года. Функция mktime() именно для этого и предназначена. Ей нужно указать час, минуту, секунду, месяц, день и год в такой же последовательности. На выходе получим нужное значение в секундах, прошедших с 1.01.1970. В примере cookie будет жизнеспособен (а значит, и поддастся считыванию) до 1 января 2012 года.

Переустановить или удалить cookie очень просто — достаточно указать либо новое значение, либо не указать его вовсе. И под конец одно существенное ограничение, работа с cookie должна вестись до какого-либо вывода на экран (в браузер пользователя) любого текста, в том числе и тегов HTML. То есть вот так уже не сработает:



… работаем с cookie …

Только так:

… работаем с cookie …



… любые другие теги и текст …


$x = mktime(0,0,0,1,1,2012);

if (isset ($kol)) { setcookie('kol', '0', $x); }

else { $_COOKIE["kol"]++; setcookie('kol', $_COOKIE["kol"], $x); }

?>

Если cookie с именем kol установлен, его значение считывается и увеличивается на единицу. Если нет — записывается в cookie ноль. В дальнейшем он будет считан и учтен. В любом месте страницы теперь можно вывести результаты:

echo "
Персональный счетчик — ".$_COOKIE["kol"]."
";

Добавьте фрагменты кода в файл document.php.



По умолчанию cookie хранится, пока не закроется браузер, но это легко изменить, добавив другой параметр - установив срок годности:


// Установка cookie

setcookie("Name", "C. Wing”, time()+3600);

setcookie("Interests", "plane sporting", time()+3600);

?>

"Time()+3600" означает, что cookie должна действовать 3600 секунд (60 минут) с данного момента.

Для получения значения cookie используется $_COOKIE. Например, если вам необходима информация из предыдущего примера, то:


// Запросить значение cookie

$strName = $_COOKIE["Name"];

$strInterest = $_COOKIE["Interests"];

// Вывести на страницу

echo "
" . strName . "
"

echo "
Вас интересует . " strInterest . "
"

?>

При запуске этого кода браузер получает cookie с именем BG, значением "green" сроком хранения час после установки cookie.


$color = " green " ;

setcookie("BG", $color, time()+3600),

?>

Отображение цвета фона страницы yiewbg.php





Hello Cookie!


Похожие:

Лабораторная работа №5 Тема: Использование элементов управления, cookie, сессии. Работа с почтой icon Лабораторная работа 1 4 лабораторная работа 2 13 лабораторная работа...
Интернете разнообразную информацию – описательную, графическую, картографическую и пр. При разработке сайтов необходимо уметь работать...
Лабораторная работа №5 Тема: Использование элементов управления, cookie, сессии. Работа с почтой icon Лабораторная работа №9 59 Лабораторная работа №10 72 Лабораторная...
Рабочая тетрадь для выполнения лабораторных работ по мдк. 03. 01. «Техническое обслуживание и ремонт компьютерных систем и комплексов»...
Лабораторная работа №5 Тема: Использование элементов управления, cookie, сессии. Работа с почтой icon Лабораторная работа №27 Лабораторная работа №28 Контрольные работы...
Пм «Сборка монтаж (демонтаж) элементов судовых конструкций, корпусов, устройств и систем металлических судов»
Лабораторная работа №5 Тема: Использование элементов управления, cookie, сессии. Работа с почтой icon Методические указания для студентов по выполнению лабораторных работ...
Лабораторная работа 4, 5 Исследование регистров, счетчиков и дешифраторов Лабораторная работа 6, 7 Исследование генератора псевдослучайной...
Лабораторная работа №5 Тема: Использование элементов управления, cookie, сессии. Работа с почтой icon Лабораторная работа №10. Изучение принципа действия и функциональной...
Лабораторная работа № Изучение принципов построения системы автоматической подстройки частоты (апч) радиолокационной станции
Лабораторная работа №5 Тема: Использование элементов управления, cookie, сессии. Работа с почтой icon Лабораторная работа №1 «Создание общих ресурсов и управление ими»
Лабораторная работа №6-7 «Изучение типов серверов, их настройка и конфигурирование»
Лабораторная работа №5 Тема: Использование элементов управления, cookie, сессии. Работа с почтой icon Лабораторная работа №5 Тема: Работа в командной строке и консультации...
После этого вы оказываетесь в так называемом вашем домашнем каталоге (Home Directory)
Лабораторная работа №5 Тема: Использование элементов управления, cookie, сессии. Работа с почтой icon Лабораторная работа №
Лабораторная работа №1. Изучение основных возможностей программного продукта Яндекс. Сервер. Установка окружения, установка и настройка...
Лабораторная работа №5 Тема: Использование элементов управления, cookie, сессии. Работа с почтой icon Лабораторная работа №5
Изучить основные понятия, структуру и назначение отдельных элементов scada системы trace mode 6
Лабораторная работа №5 Тема: Использование элементов управления, cookie, сессии. Работа с почтой icon Лабораторная работа №17
Поместите на форму элементы, требуемые для решения задачи, с панели элементов, и расположить их нужным образом
Лабораторная работа №5 Тема: Использование элементов управления, cookie, сессии. Работа с почтой icon Лабораторная работа №9
Данная лабораторная работа оформляется в виде файла word с расширением файла docx или doc и прикрепляется в виде ссылки на файл к...
Лабораторная работа №5 Тема: Использование элементов управления, cookie, сессии. Работа с почтой icon Лабораторная работа 2 12 лабораторная работа 3 17 лабораторная работа...
«Проектирование систем реального времени» для студентов специальности 09. 05. 01 «Применение и эксплуатация автоматизированных систем...
Лабораторная работа №5 Тема: Использование элементов управления, cookie, сессии. Работа с почтой icon Практическая работа Содержание
Лабораторная работа: Оценка программно-аппаратных средств при переходе на Windows Vista 3
Лабораторная работа №5 Тема: Использование элементов управления, cookie, сессии. Работа с почтой icon Лабораторная работа №1 «Применение средств операционных систем и...

Лабораторная работа №5 Тема: Использование элементов управления, cookie, сессии. Работа с почтой icon Лабораторная работа №1 «Применение средств операционных систем и...

Лабораторная работа №5 Тема: Использование элементов управления, cookie, сессии. Работа с почтой icon Контрольная работа №1 по теме «Организм. Молекулярный уровень»
Лабораторная работа №2 «Изучение клеток и тканей растений и животных на готовых микропрепаратах»

Руководство, инструкция по применению




При копировании материала укажите ссылку © 2024
контакты
rykovodstvo.ru
Поиск