Листинг 7.5. Файл chap7\cgihello\cgihello. c

#include <stdio.h>

#include <stdlib.h>

void main(int argc, char *argv[])

{

printf(*Content-type: text/html\n\n");

printf("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 3.2//EN\">");

printf("<HTML><HEAD><TITLE>

XYZ Incorporation</TITLE></HEAD><BODY>");

printf("<H1>Результат роботи програми CGI/H1>");

printf("<P>Ця сторінка створена динамічно в результаті"

"роботи програми СGI");

printf("</BODY></HTML>");

}

 

Програма не відрізняється особливою складністю і складається з ряду викликів функції pdntf.

У перший разом функція printf виводить заголовок HTTP і порожню рядок-роздільник. Далі програма CGIHELLO записує построчно в стандартний потік висновка STDOUT текст документа HTML.

7.5.2. Програма CONTROLS

Більш складна програма CGI називається CONTROLS і виконує опрацювання даних, отриманих із форми, що була показана на мал. 7.2. Вихідний текст документа HTML із цією формою подані в листинге 7.1.

Програма CONTROLS відображає в динамічно формованому документі HTML метод, використаний для передачі (POST або GET), розмір і тип даних, що надходять від форми. Прийняті дані показуються як у вихідному виді, так і після перекодування. Крім того, у документі HTML розташовується список значень усіх поляж, визначених у формі (мал. 7.7).

З малюнка очевидно, що навігатор надіслав серверу WWW 135 байт інформації. Тому що при цьому був використаний метод POST, дані були спрямовані в стандартний потік запровадження INPUT. Дані закодированы в кодировке URL, тому що вміст перемінне середовище CONTENTJTYPE дорівнює application/x-www-form-urlencoded.

Звернете увагу на текстове поле з ім'ям textl. Всі прогалини у відповідному рядку в кодировке URL замінені на символ +. Що ж стосується символу & і символу запятой, то вони прийшли у виді %26 і %2С. Функція перекодирования повертає рядок у вихідний вид - Sample of text1 &,.

Форма, показана на мал. 7.2, має дві кнопки, призначені для передачі даних серверу WWW. Це звичайна кнопка і кнопка у виді графічного зображення. Після натискання графічної кнопки від форми приходить інформація про координати курсору миші у виді перемінних з іменами х и у.

Мал. 7.7. Фрагмент документа, сформованого динамічно програмою CONTROLS

Роздивимося вихідний текст програми CONTROLS (листинг 7.6).

 








Дата добавления: 2015-04-19; просмотров: 632;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.004 сек.