ВУЗ:
Составители:
Рубрика:
- 15 -
управляющим полем (кнопка, при нажатии на которую данные передаются
WWW-серверу); для обработки данных вызывается скрипт
./cgi_bin/cgi_builder.exe, метод обработки – POST).
Переданная HTML-формой информация представлена в виде строки
(здесь имяN – имя соответствующего поля формы, значениеN – введенное
пользователем значение в соответствующее имяN поле):
имя1=значение&имя2=значение2&имя3=значение3
В приведенном выше случае эта строка (при нажатии кнопки ‘Послать
данные на сервер’ без пользовательского ввода) будет иметь вид:
f_name=peter&l_name=penn&old=18
Заметим, что такая же передаваемая серверу строка соответствует HTML-
предписанию (однако метод передачи данных в этом случае будет GET):
<a href="./cgi_bin/cgi_builder.exe?f_name=peter&l_name=penn&old=18">Послать
данные серверу</a>
Вводимые в поля формы данные могут содержать пробелы (заменяемые в
посылаемой строке на ‘+’), символы ‘&’ и запятая кодируются к %26 и %2C
соответственно, символы национальных алфавитов представляются в виде
шестнадцатиричных кодов вида ‘%XX’. Таким образом, программы CGI и
ISAPI обязаны проводить соответствующее декодирование принятой сим-
вольной строки.
В случае метода GET значение переданной строки CGI-программа
может
получить (программа в стиле С) посредством операторов:
char *sQueryStr;
…..
sQueryStr=getenv(“QUERY_STRING”); // …значение переменной QUERY_STRING
а в случае метода POST:
int Size;
char sQueryString[4098];
…..
size=atoi(getenv(“CONTENT_LENGTH”)); // длина сообщения
fread(sQueryString, Size, 1, stdin); // скопировать из stdin в буфер sQueryString
Заметим, что именно посредством функции
getenv(“имя_переменной
управляющим полем (кнопка, при нажатии на которую данные передаются WWW-серверу); для обработки данных вызывается скрипт ./cgi_bin/cgi_builder.exe, метод обработки – POST). Переданная HTML-формой информация представлена в виде строки (здесь имяN – имя соответствующего поля формы, значениеN – введенное пользователем значение в соответствующее имяN поле): имя1=значение&имя2=значение2&имя3=значение3 В приведенном выше случае эта строка (при нажатии кнопки ‘Послать данные на сервер’ без пользовательского ввода) будет иметь вид: f_name=peter&l_name=penn&old=18 Заметим, что такая же передаваемая серверу строка соответствует HTML- предписанию (однако метод передачи данных в этом случае будет GET): Послать данные серверу Вводимые в поля формы данные могут содержать пробелы (заменяемые в посылаемой строке на ‘+’), символы ‘&’ и запятая кодируются к %26 и %2C соответственно, символы национальных алфавитов представляются в виде шестнадцатиричных кодов вида ‘%XX’. Таким образом, программы CGI и ISAPI обязаны проводить соответствующее декодирование принятой сим- вольной строки. В случае метода GET значение переданной строки CGI-программа может получить (программа в стиле С) посредством операторов: char *sQueryStr; ….. sQueryStr=getenv(“QUERY_STRING”); // …значение переменной QUERY_STRING а в случае метода POST: int Size; char sQueryString[4098]; ….. size=atoi(getenv(“CONTENT_LENGTH”)); // длина сообщения fread(sQueryString, Size, 1, stdin); // скопировать из stdin в буфер sQueryString Заметим, что именно посредством функции getenv(“имя_переменной - 15 -
Страницы
- « первая
- ‹ предыдущая
- …
- 13
- 14
- 15
- 16
- 17
- …
- следующая ›
- последняя »