- •Обработка форм Для этого необходимо наличие:
- •-что с ней происходит;
- •Такая программа называется:
- •Диалог пользователя
- •6.Сценарий передает ответ серверу.
- •Атрибуты:
- •Механизм CGI
- •-переменные окружения;
- •Виды ответов
- •3. Переадресация
- •Механизмы обмена
- •I.Переменные окружения
- •б) Запросо-ориентированные
- •- REQUEST_METHOD -
- •- QUERY_STRING - информация о запросе, переданная в программу. Для присоединения этой информации
- •В QUERY_STRING помещается все,
- •Следующие две переменные определяют тип и длину передаваемой информации от клиента к серверу.
- •- CONTENT_LENGTH - определяет, сколько байтов необходимо прочитать из стандартного потока.
- •Обработка результатов
- •Заголовок состоит из одной или
- •Прямой возврат
- •Сервер просматривает
- •Методы доступа
- •1. Метод GET
- •Имеется разновидность метода
- •2. Метод POST
- •Данные в методе POST идут в таком же формате, как и для метода
- •Символ “пробел” заменяется
- •3. Метод HEAD
- •Ответ сервера
- •2. Полный ответ
- •Строка состояния
- •Классы кодов
- •Это могут быть:
- •- 5хх – ошибки сервера (сервер столкнулся с ошибкой и, вероятно, не сможет
- •Код возврата обозначает
- •Настройка
- •Необходимо:
- •б) ищется переменная
- •2.Файл httpd.conf
- •Для Web-сервера Apache версии
- •Работа с Web-сервером:
- •-если компьютер подключен к
- •-Включить кнопку «Использовать
- •В браузере Firefox надо проделать
- •В браузере Opera надо проделать
- •Вам выдан файл:
- •1.Если доступен диск C:, то в нем
- •4. Если Вы всё проделали:
- •7. Для выключения работы сервера
- •Примеры скриптов
- •Вначале необходимо включить
- •Способ 1. int *L_s; int cnl;
- •char str [1024]; fgets (str, cnl, stdin);
- •Способ 2
- ••Можно сделать и так: char *pR_M;
- •Delphi
- •2. Чтение и запись стандартными
- •3. Для получения значений
- •Эта функция возвращает:
- •Например
- •II.Через объекты
- •3. В Инспекторе объектов выбрать
- •5.Перейти в Инспектор объектов на
- •В заготовке будет процедура
- ••В заготовке процедуры можно
- •В переменной Str_Data все строки
- ••Для извлечения значений полей
- •Для помещения данных при
В переменной Str_Data все строки
будут иметь вид: Name = Value
где
Name – имя поля; Value – значение поля.
Для проверки методов передачи данных надо проверить значения mtGET, mtPOST, mtHEAD, используя свойства MethodType объекта Request. 71
if Request.MethodType = mtPOST then
Request.ExtractContentFields (Str_Data)
else if Request.MethodType = mtGET then
Request.ExtractQueryFields (Str_Data) else
{
Str_Data.Free; Exit;
•Если ни один из двух методов не подошел, то мы очищаем память от этого объекта
} |
72 |
|
•Для извлечения значений полей
надо применять свойства
Str_Data.Values[‘Name’] = ‘Значение’
Здесь Str_Data.Values[‘Name’] выделяет значение поля или кнопки по имени поля Name,
‘Значение’ – с чем надо сравнивать.
73
Для помещения данных при
формировании ответа применяется переменные объекта Response.
•Для вида ответа: Response.ContentType := ‘text/html’; (или text/plain).
Для самого ответа свойство Content, которое будет содержать полный текст выходного документа. Здесь можно использовать вспомогательные документы и переменные. 74
Response.Content :=
“<html><head><title>” + ”Это CGI скрипт на Delphi” + “</title></head>” +
<body> Текст ответа” + Str1 + “Еще текст </body></html>”;
•В конце модуля должна быть очистка памяти от мусора
Str_Data.Free;
75