Microsoft Visual J++. Создание приложений и аплетов на языке Java


Исходные тексты программы CGI - часть 2


    // при передаче данных из полей формы

    lSize = atoi(getenv("CONTENT_LENGTH"));

 

    // Читаем эти данные в буфер szBuf из

    // стандартного потока ввода STDIN

    fread(szBuf, lSize, 1, stdin);

 

    // Создаем файл, в который будут записаны

    // принятые данные

    fileReceived = fopen("received.dat", "w");

 

    // Выполняем запись принятых данных

    fwrite(szBuf, lSize, 1, fileReceived);

 

    // Закрываем файл принятых данных

    fclose(fileReceived);

 

    // Отображаем значения некоторых переменных среды

    printf("<H2>Environment variables</H2>");

   

    // Метод доступа

    printf("REQUEST_METHOD = %s", getenv("REQUEST_METHOD"));

 

    // Размер полученных данных в байтах

    printf("<BR>CONTENT_LENGTH = %ld", lSize);

 

    // Тип полученных данных

    printf("<BR>CONTENT_TYPE = %s", getenv("CONTENT_TYPE"));

 

    // Закрываем буфер данных двоичным нулем,

    // превращая его таким образом в строку

    szBuf[lSize] = '\0';

 

    // Делаем копию принятых данных в буфер szSrcBuf

    strcpy(szSrcBuf, szBuf);

 

    // Отображаем принятые данные без обработки

    printf("<H2>Received data</H2>");

    printf("<P>%s", szSrcBuf);

 

    // Выполняем перекодировку принятых данных

    DecodeStr(szSrcBuf);

 

    // Отображаем результат перекодировки

    printf("<H2>Decoded data</H2>");

    printf("<P>%s", szSrcBuf);

 

    // Выводим список значений полей формы

    printf("<H2>Filds list</H2>");

   

    // Дописываем в конец буфера принятых данных

    // символ "&", который используется в качестве

    // разделителя значений полей

    szBuf[lSize] = '&';

    szBuf[lSize + 1] = '\0';

 

    // Цикл по полям формы




Начало  Назад  Вперед



Книжный магазин