Слайд 2Инструменты для запуска web-приложений
Для запуска веб-приложений требуется веб-сервер и интерпретатор
языка, на котором пишется программа
Можно установить на локальный компьютер всё
ПО по отдельности, но более простой способ – использование готовых пакетов серверных программ. Эти пакеты содержат веб-сервер (как правило, Apache), интерпретаторы языков для веб-программирования (PHP, Perl, иногда другие), сервер БД MySQL
Denwer – 5мб, российская разработка
XAMPP – 80 мб, проект Apache Friends, есть версии для разных ОС
Слайд 3Последовательность действий для запуска веб-приложений
Установить пакет серверных программ, запустить его
Проверить
его работоспособность: открыть браузер и набрать адрес локального сервера –
http://localhost/ или http://127.0.0.1/ - должно появиться приветственное сообщение веб-сервера
Если сообщение об успехе не появляется, значит серверы не запустились и требуется дополнительная настройка. Примечание: иногда мешают запущенные сетевые программы, например, Skype занимает порт № 80
Поместить сценарии (файлы) на PHP в корневую папку веб-сервера, кот. доступна через сеть (для XAMPP это папка htdocs). Можно создать подкаталог
В браузере набрать адрес сценария - http://localhost/ + путь к файлу и его имя. Например, в кат. htdocs создали папку test, а вней – hello.php. Тогда адрес этого сценария будет - http://localhost/test/hello.php
Слайд 4Передача и приём параметров формы
Параметры, переданные с помощью формы, могут
быть обработаны с помощью PHP
Для этого необходимо:
У каждого элемента формы
должно быть имя (присвоено значение атрибута name). Эти имена будут использованы для получения значений этих параметров в сценарии PHP
Атрибут action тега
Слайд 6Обработчик формы (process.php)
$login!";
echo "
Ваш пароль: $pas";
switch ($pol) {
case "M" :
echo "
Вы - мужчина!"; break;
case "G" : echo "
Вы - женщина!"; break;
default : echo "
Вы ещё не определились?!"; break;
}
// работа с флажками
if (isset($_REQUEST["eng"])) echo "
Вы владеете английским";
if (isset($_REQUEST["nem"])) echo "
Вы владеете немецким";
if (isset($_REQUEST["c"])) echo "
Вы владеете С++";
// список
$cities = array( 1=> "Москва", "Уфа" );
$city = $_REQUEST["city"];
echo "
Ваш город - $cities[$city]";
?>
Слайд 7Сохранение данных в PHP-скриптах
Программа на PHP (скрипт) выполняется короткое время
на сервере. После формирования вывода в браузер (передачи данных) и
загрузки страницы, программа завершается, все её данные (переменные) уничтожаются
Как сохранить данные? Несколько способов:
сохранить их в файл на сервере, если это позволяют права доступа (есть право на запись). Используются функции fopen, fwrite, fread и т.п.
сохранить данные в БД на сервере
использовать сеансы (sessions, сессии)
Слайд 8Работа с сеансами в PHP
Сеансы позволяют сохранять данные и использовать
их в разных сценариях или многократно в одном сценарии при
его повторном запуске
Данные сохраняются как элементы глобального ассоциативного массива $_SESSION
Для работы с данными сессии в PHP-сценарии первой функцией (в самом начале) должна быть вызвана функция session_start();
Для разных пользователей (посетителей) сайта будут созданы отдельные сессии
Слайд 9Сохранение данных
Для сохранения данных можно использовать:
функцию session_register, кот. сохраняет данные
из переменной в сессию. Пример:
$barney = "A big purple dinosaur.";
session_register("barney");
создать новый элемент (новый
индекс) глобального массива $_SESSION. Пример:
$_SESSION[“login”] = $login;
Слайд 10Извлечение данных
Для извлечения данных можно использовать:
обратиться к элементу (индексу) глобального
массива $_SESSION. Пример:
echo “Логин: “.$_SESSION[“login”];
Слайд 11Уничтожение данных сессии
Сфера применения:
удаление ненужных данных
завершение работы пользователя в системе
(например, выход из личного кабинета и т.п.)
Два способа:
функция session_unregister -
уничтожает указанный элемент сессии. Например,
session_unregister(“login”)
функция unset – уничтожает любую переменную или элемент массива. Например:
unset($_SESSION[“login”]);
Слайд 12Уничтожение сессии
функция session_destroy уничтожает все данные текущей сессии и завершает
сессию
после вызова этой функции обратиться к данным сессии будет нельзя
Может
быть использована при выходе пользователя из персональной части сайта