Особенности механизма сеансов

Отчет по лабораторной работе №16

«Применение cookie и сеансов в PHP»

Вариант 3

Задание: Сделать скрипты: 1-й - для установки коэффициентов системы из 2-х уравнений от 2-х переменных (значения не вводят через поля формы), 2-й - для нахождения решений системы, 3-й - для вывода результата. Использовать cookie либо сессии

URL-адрес:http://172.23.64.64/ftp/10/1410177/Lab16/lab16_1.php

Цель:

1. Изучить Особенности механизма сеансов принцип работы c cookie-файлами.

2. Изучить принцип работы сеансов и использования сеансовых переменных.

3. Применить приобретенные познания для написания сценариев на PHP.

Содержание отчета:

1. Титульный лист.

2. Теоретическая часть.

3. Непременно указать номер варианта, текст личного задания, тестовые данные.

4. Копии экрана, иллюстрирующие работу сценариев PHP.

5. Коды php-страниц, выполненных согласно варианту.

Теоретическая часть

Cookie Особенности механизма сеансов – этот механизм сначало думал как основной для обеспечения обмена данными меж разными страничками. Но следует держать в голове, что данные cookie сохраняются на компьютере клиента. Юзер браузера может управлять опциями механизма cookie прямо до полного его отключения (многие так и поступают). Это событие ограничивает внедрение cookie в разработках суровых Особенности механизма сеансов Web-приложений. Так, если приложение нацелено на внедрение cookie, а юзер отключил их, то приложение может работать неправильно. К примеру, в неких гостевых книжках добавление записей юзеров может быть, только если механизм cookie включен.

В РНР установка значений cookie-записей делается при помощи интегрированной функции setcookie(), а их чтение Особенности механизма сеансов — при помощи суперглобального массива $_COOKIE.

Функция setcookie(name, value, expires, path, domain, secur) примает последующие характеристики: name — строчка, содержащая имя cookie-записи (неотклонимый параметр)|;

value— строчка, содержащая значение cookie;

expires— срок хранения cookie-записи как количество секунд; если отсутствует, то после окончания работы браузера cookie-запись удаляется; время Особенности механизма сеансов жизни следует задавать при помощи функции time() либо mktime() . К примеру, если нужно установить время жизни cookie-записи 2 часа, начиная от момента ее сотворения, то значение данных параметра следует задать как time()+2*60*60;

path— строчка, содержащая путь cookie-записи;

domain — строчка, содержащая домен подходящей cookie-записи;

secure — логическое значение Особенности механизма сеансов (true либо false), определяющее необходимость использования неопасного HTTP-соединения.

Для внедрения функции setcookie() неотклонимым является только 1-ый параметр — имя cookie-записи. Для сотворения cookie-записи довольно указать непустое значение второго параметра.

Для удаления cookie-записи довольно установить для нее пустое значение:

setcookie ("mycookie");

setcookie ("mycookie", "");

Сеанс (сессия, session) в РНР Особенности механизма сеансов — механизм, который позволяет обеспечить доступность данных, сделанных на разных серверных страничках 1-го веб-сайта, для других страничек в этом же веб-сайте. Разработка сеансов открывает способности и преодолевает ограничения cookie по обмену данными меж Web-страницами. Сеанс создается и запирается. В интервале времени меж этими событиями все РНР-сценарии Особенности механизма сеансов, расположенные в различных файлах и присоединенные к данному сеансу, имеют доступ к переменным, сделанным в других сценариях этого же веб-сайта.

Сеанс создается при помощи интегрированной функции session_start() на каждой серверной страничке, которую требуется подключить к сеансу. Если нужно, чтоб все странички имели доступ ко всем данным, сгенерированным Особенности механизма сеансов на хоть какой из их, то функцию session_start() следует вызвать на всех страничках.. Функция session_start() не имеет характеристик, а возвращает всегда true. Вызов функции session_start() должен предшествовать выводу какой-нибудь инфы в браузер.

Особенности механизма сеансов

Поддержка cookie включена. В данном случае глобальной переменной $PHPSESSID присваивается значение Особенности механизма сеансов идентификатора сеанса; а cookie употребляется для передачи значения $PHPSESSID меж сценариями (страничками).

Поддержка cookie отключена. Интерпретатор PHP делает константу, значением которой является "PHPSESSID=идентификатор_сеанса". Внедрение идентификатора сеанса определяется значением директивы session.use_trans_sid. По дефлоту это значением равно 0 (директива отключена). Чтоб включить данную директиву, нужно Особенности механизма сеансов в файле php.ini поменять подобающую строчку: session.use_trans_sid=1. При включенной директиве можно создавать сценарии, не зависящие от опции браузера по применению cookie. Разглядим случаи разных значений директивы session.use_trans_sid:

1. session.use_trans_sid =1. Идентификатор сеанса при отключенной поддержке cookie пересылается средством частей, в каких указан URL Особенности механизма сеансов-адрес. При переходе на другую страничку при помощи ссылки, функции header() либо формы с способом GET идентификатор сеанса добавляется к URL-адресу и виден в адресной строке браузера, что время от времени не нужно. Следует подразумевать, что идентификатор сеанса добавляется к URL-адресам, подходящим одному и тому же Особенности механизма сеансов веб-сайту. Если в URL-адресе содержится имя сервера, то к такому URL-адресу идентификатор сеанса не будет добавлен. К примеру, при использовании ссылки идентификатор будет добавлен к адресу, а при использовании ссылки <а href=http://myserver.ru/nextpage.php - нет: Но можно использовать передачу идентификатора сеанса в укрытых Особенности механизма сеансов полях формы с способом POST, при котором идентификатор сеанса не добавляется к URL-адресу:

2. session.use_trans_sid =0. Идентификатор сеанса при отключенной
поддержке cookie не пересылается. По мере надобности разработчик приложения делает это без помощи других, используя константу SID. Так как эта константа имеет значение вида "PHPSESSID=идентификатор_сеанса", то можно просто Особенности механизма сеансов добавить ее к URL-адресу, к примеру, <а href="mainpage.php?">Основная страничка. Но в данном случае идентификатор сеанса, видимый в адресной строке браузера, может быть применен злодеями в неблаговидных целях.

Выполнение задания

Вариант 3.

Сделать скрипты: 1-й - для установки коэффициентов системы из 2-х уравнений от 2-х переменных (значения не вводят через поля Особенности механизма сеансов формы), 2-й - для нахождения решений системы, 3-й - для вывода результата. Использовать cookie либо сессии

Копии экрана с работающим приложением:

Рис.1.Скрипт 1

Рис.2. Скрипт 2

Рис.3. Скрипт 3

Листинг программного кода:

lab16 _1.php:(Скрипт на языке PHP)

setcookie("a1", 3);

setcookie("c1", 15);

setcookie("a2", 4);

setcookie("b2", 3);

setcookie("c2", 2);

echo "Лабораторная работа №16";

echo "
Задание: 3.";

echo "Сделать скрипты Особенности механизма сеансов: 1-й - для установки коэффициентов системы из 2-х уравнений от 2-х переменных (значения не вводят через поля формы), 2-й - для нахождения решений системы, 3-й - для вывода результата. Использовать cookie либо сессии";

echo "
Выполнила: ";

echo "Белова Алена";

echo "


Установлены коэффициенты для системы уравнений";

echo "
1-е уравнение: 3y=15";

echo "
2-е уравнение: 4x Особенности механизма сеансов+3=2y";

echo "

Последующий скрипт";

?>

lab16 _2.php:(Скрипт на языке PHP)

if ((isset($_COOKIE['a1'])) && (isset($_COOKIE['c1'])))

{

$a1=$_COOKIE['a1'];

$c1=$_COOKIE['c1'];

}

$y=$c1/$a1;

if ((isset($_COOKIE['a2'])) && (isset($_COOKIE['b2'])) && (isset($_COOKIE['c2'])))

{

$a2=$_COOKIE['a2'];

$a2=$_COOKIE['b2'];

$c2=$_COOKIE['c2'];

}

$x Особенности механизма сеансов=($c2*$y-$b2)/$a2;

setcookie("x", $x);

setcookie("y", $y);

echo "

Тут были произведены вычисления";

echo "

Последующий скрипт";

?>

lab16 _3.php:(Скрипт на языке PHP)

if ((isset($_COOKIE['x'])) && (isset($_COOKIE['y'])))

{

echo "
Переменная x = ";

echo $_COOKIE['x'];

echo "
Переменная y = ";

echo $_COOKIE['y'];

}

?>


osobennosti-konstrukcii-i-markirovka.html
osobennosti-konstrukcii-pnevmaticheskih-amortizatorov.html
osobennosti-konstruktivnih-igr-detej.html