Delphi World - это проект, являющийся сборником статей и малодокументированных возможностей  по программированию в среде Delphi. Здесь вы найдёте работы по следующим категориям: delphi, delfi, borland, bds, дельфи, делфи, дэльфи, дэлфи, programming, example, программирование, исходные коды, code, исходники, source, sources, сорцы, сорсы, soft, programs, программы, and, how, delphiworld, базы данных, графика, игры, интернет, сети, компоненты, классы, мультимедиа, ос, железо, программа, интерфейс, рабочий стол, синтаксис, технологии, файловая система...
О создании Гостевой книги

Оформил: DeeCo

Автор: Евгений Акованцев

Самый простой способ - использование класса TWebModule.
Для этого из File|New выбираем Web Server Application, дальше тип: ISAPI/NSAPI, CGI или Win-CGI.
Смотрим свойства TWebModule1 в Object Inspector и добавляем новое действие (action).
Обработчик события OnAction выполняется при запросе вида
http://www.yourhost.com/cgi-bin/web.exe/path
где path определяется свойством PathInfo. Установка Default в True приведет к выполнению этого действия по умолчанию (если /path не задан или такое действие не найдено). В обработчик события передаются объекты Request и Response.
  • Request хранит информацию о запросе, например, адрес удаленного хоста (Request.RemoteAddr), передаваемые параметры (Request.QueryFields) и т.д.
  • Response, соответственно, возвращаемую информацию.

Для использования "шаблонов" можно взять TPageProducer. В его свойствах можно указать либо путь к html файлу шаблона, либо ввести его самому в HTMLDoc. При встрече тэга определенного вида <#DATA> будет вызван обработчик события OnHTMLTag, где можно подставить вместо этого тэга свой текст. Пример:
procedure TWebModule1.WebModule1WebActionItem1Action(Sender: TObject;
  Request: TWebRequest; Response: TWebResponse; var Handled: Boolean);
begin
  PageProducer1.HTMLFile := 'test.html';
  // Использовать результат работы PageProducer1
  Response.Content := PageProducer1.Content;

end;

procedure TWebModule1.PageProducer1HTMLTag(Sender: TObject; Tag: TTag;
  const TagString: string; TagParams: TStrings; var ReplaceText: string);
begin
  if TagString = 'FIRSTNAME' then
    // Если встретился тэг <#FIRSTNAME> заменить его на "Петров"
    ReplaceText := 'Петров';
  if TagString = 'LASTNAME' then
    ReplaceText := 'Иван';
end;
В результате работы этого cgi пользователь увидит файл test.html, в котором вместо тэгов <#FIRSTNAME> и <#LASTNAME> были подставлены значения "Иван" и "Петров"
Проект Delphi World © Выпуск 2002 - 2004
Автор проекта: ___Nikolay