"Интернет решения от доктора Боба" - читать интересную книгу автора (Swart Bob)

3.4.1. Счетчик

Счетчик посещений это первое, в чем нуждается популярный web сайт. Меня всегда интересует количество людей посетивших мой сайт. Я всегда заинтересован знать количество людей каждый день. И я всегда заинтересован знать, как выходные и праздники влияют на посещения.

Для отслеживания количества посетителей я просто создан однострочный файл, назвав его "counter", который содержит количество посещений. Единственная вещь, которая нам требуется, это простая CGI программа, которая читает этот файл, увеличивает на единичку и записывает обратно. Конечно, прекрасно при этом показывать посетителю эту информацию или в виде картинки или в виде простого текстового сообщения.

  {$APPTYPE CONSOLE}

  {$I-}

  var

    f: Text;

    i: Integer;

  begin

    System.Assign(f,'counter');

    reset(f);

    if IOResult = 0 then readln(f,i)

                    else i := 0;

    Inc(i);

    rewrite(f);

    writeln(f,i);

    close(f);

    if IOResult lt;gt; 0 then { skip };

    writeln('Content-type: text/html');

    writeln;

    writeln('lt;HTMLgt;');

    writeln('lt;BODYgt;');

    writeln('lt;CENTERgt;');

    writeln('You are user lt;Bgt;',i,'lt;/Bgt; of Dr.Bob''s Delphi Clinic');

    writeln('lt;/CENTERgt;');

    writeln('lt;/BODYgt;');

    writeln('lt;/HTMLgt;')

  end.

Вышеприведенная программа показывает текущее значение в виде текстового сообщения, которое выводится в отдельном фрейме:

lt;HTMLgt;

lt;FRAMESET ROWS="64,*"gt;

lt;FRAME SRC=http://www.drbob42.com/cgi-bin/hitcount.exe? NAME="Head"gt;

lt;FRAME SRC="guest.htm"NAME="Main"gt;

lt;/FRAMESETgt;

lt;/HTMLgt;

Это очень простое CGI приложение. Оно даже не получает ввода, просто преобразовывает удаленный файл на web сервере и возвращает динамическую страницу. Позвольте теперь сделать фокус на более сложном CGI приложении – таком которое требует ввода данных – например гостевой книге.