
- •Структура приложений в сети Интернет. Привести схему и пояснить назначение ее основных составных частей
- •Дать характеристику протоколу http. Его соотношение с другими протоколами (Ethernet, tcp/ip, ftp, Telnet и др)
- •Формат данных в протоколе http
- •Http запрос. Виды запросов. Основные части запросу. Строка статуса запроса. Привести примеры
- •Поля строки статуса http запроса. Количество полей, их взаимное расположение, разделители.
- •Охарактеризовать методы в строке статуса http запроса. Методы
- •Метод get и его особенности. Области применения. Привести примеры. Формат url. Параметры запроса, привести примеры.
- •Метод post и его особенности. Области применения. Привести примеры. Формат url. Параметры запроса, привести примеры.
- •Охарактеризовать основные параметры, описывающие характеристики http запроса. Привести примеры
- •Охарактеризовать основные параметры, описывающие характеристики тела http запроса. Привести примеры.
- •Протокол cgi и его характеристики. Область применения. Методы передачи данных от веб сервера в cgi программу и из cgi программы веб серверу.
- •Написать php программу, которая выводит все данные полученные от веб сервера.
- •Написать php программу, которая подсчитывает количеству посещений страницы.
- •Методы получения параметров из html форм в php программе. Рассмотреть методы передачи get и post.
- •Написать php программу, которая записывает в файл ip адрес и время каждого посещения.
- •Методывзлома php сайтов. Sql иньекции.Php иньекции.
- •Язык xml, его характеристика. Сравнительная характеристика xml и html. Дать краткую характеристику сопутствующих технологий.
- •Требования к синтаксису языка xml. Привести пример правильно отформатированных документов и документов нарушающих правила форматирования.
- •Дать характеристику действительным xml документам. Привести примеры.
- •Охарактеризовать технологию xsl. Назначение и основные возможности. Привести примеры.
- •Охарактеризовать технологию xsd. Назначение и основные возможности. Привести примеры.
- •Охарактеризовать основные методы анализа xml документов. Их сравнительная характеристика и области применения.
- •Объектная модель документа (dom). Основные характеристики и назначение. Привести примеры.
- •Дать сравнительную характеристику технологиям java, которые используются для разработки клиентской и серверной частей веб приложений.
- •Контейнеры сервлетов и их назначение. Требования к контейнерам.
- •Java сервлеты. Их назначение. Способы создания. Виды сервлетов. Способы доступа к параметрам и возврата данным веб серверу.
- •Жизненный цикл Java сервлета.
- •Охарактеризовать технологию jsp. Ее сравнение с технологиями php и asp.
- •Взаимоотношение технологий Java сервлетов и jsp.
- •Структура веб приложения с использованием Java сервлетов и jsp.
- •Шаблон mvc. Его назначение и основные характеристики.
- •Охарактеризовать технологию jsf. Ее назначение и взаимоотношение с технологий Java сервлетов и jsp.
- •Основные компоненты jsf технологии. Facalets, Manadged Beans, рендереры, валидаторы, конвертеры и их взаомодействие.
- •Жизненный цикл jsf компонент. Привести схему.
- •Охарактеризовать основные слои веб приложения на java. (jpa, Entity bean, jdbc, dao, SessionBean, Facade)
Написать php программу, которая подсчитывает количеству посещений страницы.
<?php echo "Количествопосещений:\n"; $filename = "count.txt"; $fd = fopen( $filename,"r" ); $cont = fread( $fd, filesize( $filename ) ); fclose( $fd ); $cont=$cont+1; $fd = fopen( $filename,"w" ); fwrite($fd, $cont); fclose( $fd ); echo $cont; echo " раз(а).\n"; ?>
Методы получения параметров из html форм в php программе. Рассмотреть методы передачи get и post.
Метод запроса GET
Формат запроса: GET сценарий?параметры HTTP/1.0
» Переменные окружения: REQUEST_URI; в переменной QUERY_STRING сохраняется значение и параметры, в переменной REQUEST_METHOD — ключевое слово GET.
Этот заголовок является обязательным (если только не применяется метод POST) и определяет адрес запрашиваемого документа на сервере. Также задаются параметры, которые пересылаются сценарию (если сценарию ничего не передается, или же это обычная статическая страница, то все символы после знака вопроса и сам знак опускаются). Вместо строки HTTP/1.0 может быть указан и другой протокол - например, HTTP/1.1. Именно его соглашения и будут учитываться сервером при обработке данных, поступивших от пользователя, и других заголовков.
Строка сценарий?параметры задается в том же самом формате, в котором она входит в URL. Неплохо было бы назвать эту строку как-нибудь более реалистично, чтобы учесть возможность присутствия в ней командных параметров. Такое название действительно существует и звучит как URI (UniversalResourceIdentifier - Универсальный идентификатор ресурса). Очень часто его смешивают с понятием URL (вплоть до того, что это происходит даже в официальной документации по стандартам HTTP). Под словом URL мы понимаем полный путь к некоторойWeb-странице вместе с параметрами, а URI - это его часть, расположенная после имени (или IP-адреса) хоста и номера порта.
Пускай нам нужно передать в файл три переменных $a, $b и $c методом GET и вывести их сумму на экран. Для этого можно использовать следующий код:
$a = $_GET['a']; |
$b = $_GET['b']; |
$c = $_GET['c']; |
|
$summa = $a + $b + $c; |
echo "Сумма $a + $b + $c = $summa"; |
Метод запроса POST
Формат запроса: POST сценарий?параметры HTTP/1.0
» Переменная окружения: REQUEST_URI; в переменной QUERY_STRING сохраняется значение и параметры, в переменной REQUEST_METHOD — слово POST.
Настал момент рассмотреть метод POST. Приведем сразу практический пример метода запроса POST:
POST /script.cgi HTTP/1.0\n Content-length: 6\n \n Hello!
Сервер начнет обработку запроса, не дожидаясь передачи данных после маркера конца заголовков. Иными словами, сценарий запустится сразу же после отправки \n\n, а уж ждать или не ждать, пока придет строка Hello! длиной 6 байт - его дело. Последнее означает, что сервер никак не интерпретирует POST-данные (точно так же, как он не интерпретирует некоторые заголовки), а пересылает их непосредственно сценарию. Но как же сценарий узнает, когда данные кончаются, т. е. когда ему прекращать чтение информации, поступившей от браузера? В этом ему поможет переменная окружения Content-Length, и именно на нее следует ориентироваться.
Зачем нужен метод POST? В основном для того, чтобы передавать большие объемы данных. Например, при загрузке файлов через Web или при обработке больших форм, об этом мы поговорим далее. Кроме того, метод POST часто используют для эстетических целей: дело в том, что при применении GET, как вы, наверное, уже заметили, URL сценария становится довольно длинным и неизящным. Переданные сценарию параметры не отображаются в окне браузера, POST-запрос оставляет URL без изменения.
Код первого файла с формой для отправки данных. Дадим ему название post-1.php
|
<!--Форма --> |
|
|
<form action="post-2.php" method="post" name="form1" target="_blank"> |
|
<!--Текстовые поля --> |
|
|
<p><input name="name" type="text" size="20"></p> |
|
<p><input name="lastname" type="text" size="20"></p> |
|
|
<!--Кнопка --> |
|
|
<p><input name="submit" type="submit" value="Передать"></p> |
|
|
</form> |
|