Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Листинг 7.8. Файл chap7\aret\aref. c




Листинг 7.7. Файл chap7\aref\aref. htm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">

<HTML>

<HEAD>

<TITLE>Посилання на документи HTML</TITLE>

</HEAD>

<BODY BGCOLOR=#FFFFFF>

<A НРЕF="httр://frolov/frolov-cgi/aref.exe?page1">Домашня сторінка</А><ВР>

<A HREP="http://frolov/frolov-cgi/aref.exe?page2">Kниги</A><BR>

<A HREF="http://frolov/frolov-cgi/aref.exe?page3">Cтaтьи</A><BR>

</BODY>

</HTML>

 

У цьому документі є три посилання на програму CGI з ім'ям aref.exe, причому щораз їй передаються різні параметри. Зовнішньо документ вигладить так, як це показано на мал. 7.8.

Мал. 7.8. Документ HTML із посиланнями м програму CGI

Програма CGI приймає параметр і в залежності від його значення відображає один із документів HTML. Наприклад, при виборі третього рядка у вікні навігатора відображається документ, показаний на мал. 7.9.

Мал. 7.9. Документ, що відображається програмою CGI при виборі рядки "Статті "

Вихідний текст програми AREF достатньо простий:

 

#include <stdio.h>

#include <stdlib.h>

#include <string.h>

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

{

char *szQueryString;

szQueryString = getenv{'QUERY_STRING');

if(!strcmp(szQueryString, "page1"))

printf("Location: home.htm\n\n");

else if(!strcmp(szQueryString, "page2"))

printf("Location: books.htm\n\n");

else if(!strcmp(szQueryString, "page3"))

printf("Location: capital.htm\n\n");

else printf("Location: error. htm\n\n");

}

 

Програма одержує значення перемінне середовище QUERY_STRING, користуючи для цього функцією getenv. Далі вона порівнює значення параметра з рядками "page1", "page2" і "page3". При збігу програма повертає навігатору адреса URL відповідного документа HTML, формуючи заголовок HTTP спеціального виду:

 

Location: <Адреса URL документа HTML або графічного зображення>\n\n

 

Коли навігатор одержує від серверу WWW такий заголовок, він відображає у своєму вікні документ або файл графічного зображення, адреса URL якого зазначений у заголовку.

Таким чином, програма CGI може аналізувати параметри, що надходять від навігатора через посилання або поля форми, а потім не тільки динамічно формувати документ HTML для відображення у вікні навігатора, але і повертати посилання на вже існуючі документи у виді їхніх адрес URL.

Ця можливість може придатися вам для організації посилань на документи HTML через списки, утворювані оператором <SELECT>, розташованим у формі. Програма CGI може визначити, яка рядок був обраний у списку в момент посилки заповненої форми серверу WWW, і в залежності від цього або повернути посилання на той або інший існуючий документ HTML, або сформувати новий документ HTML динамічно.

7.5.4. Програма COUNTER

Майже на кожному сервері WWW у мережі Internet можливо зустріти лічильник провідин. По його показаннях можна судити про відвідування серверу, що має, наприклад, значення при виборі серверу для розміщення реклами.

Існують різноманітні методи створення лічильників, доступність яких багато в чому визначається програмним забезпеченням і настроюванням серверу WWW, а також доброю волею постачальника послуг Internet (якщо ваш - сервер WWW виртуальный і фізично розташований у постачальника). У такій главі буде розказане про те, як зробити лічильник провідин за допомогою програми CGI і розширення ISAPI.

Самий простий засіб створення лічильника полягає в такому. Ті документи HTML, на котрих необхідно розмістити лічильник, перетворяться у файл шаблона. У цьому файлі в тому місці, де повинно розташовуватися текстове значення лічильника, необхідно помістити послідовність заздалегідь визначених символів, наприклад ххххх або ~~~~~.

Приклад такого файла шаблона ви можете знайти в листинге 7.9.

 




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


Дата добавления: 2014-11-29; Просмотров: 370; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.011 сек.