Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лабы / ИТСлаб8.doc
Скачиваний:
25
Добавлен:
16.04.2013
Размер:
390.66 Кб
Скачать

5.5. Создание cgi-приложения для работы с базой данных

Для создания CGI-приложений, работающих с базами данных, в системе Borland C++ Builder предусмотрены компоненты , находящиеся на странице Internet палитры компонентов.

Создадим приложение для работы с учебной базой данных Zgrad.

1. Создайте CGI-приложение на основе компонента TWebModule.

2. Поместите в форму WebModule1 компонент TQuery с именем Query1 и компонент TQueryTableProducer с именем QueryTableProducer1.

3. Для компонента Query1 установите свойство DatabaseName=Zgrad, а в свойстве SQL задайте оператор языка SQL для БД Zgrad.

4. Для компонента QueryTableProducer1 установите свойства Caption, Header, Footer, задающие на языке HTML вывод поясняющего текста к таблице БД.

5. Откройте окно редактора столбцов HTML-таблицы двойным щелчком по компоненту QueryTableProducer1. Включите в HTML-таблицу все столбцы, нажав кнопку Add All Fields на панели инструментов редактора столбцов.

6. Откройте окно редактора действий компонента TWebModule и создайте новое действие. Задайте следующую процедуру обработки события OnAction для созданного действия, которая вставляет в ответ сервера результат выполнения SQL-запроса, представленный свойством QueryTableProducer1->Content:

void __fastcall TWebModule1::WebModule1WebActionItem1Action(

TObject *Sender, TWebRequest *Request, TWebResponse *Response,

bool &Handled)

{

Response->Content = "<HEAD><TITLE>";

Response->Content += "Пример использования TqueryTableProducer";

Response->Content += "</HEAD></TITLE>";

Response->Content += QueryTableProducer1->Content();

}

7. Оператор, выполняющий SQL-запрос, поместим в процедуру обработки события OnCreate компонента TWebModule, а оператор, подготавливающий компонент Query к изменению свойства SQL (к записи нового SQL-запроса), поместим в процедуру обработки события OnDestroy компонента TWebModule:

void __fastcall TWebModule1::WebModuleCreate(TObject *Sender)

{

Query1->Open();

}

void __fastcall TWebModule1::WebModuleDestroy(TObject *Sender)

{

Query1->Close();

}

8. Откомпилируйте приложение под именем WebModDB и скопируйте его исполняемый модуль на устройство W.

9. Подготовьте HTML-документ для проверки работоспособности CGI-приложения и осуществите эту проверку.

10. Модифицируйте приложение и HTML-документ так, чтобы пользователь мог набирать любой SQL-запрос в поле ввода формы и получать таблицу результатов запроса в ответе сервера.

Лабораторное задание и порядок его выполнения

  1. Ознакомиться с основами технологии разработки web-приложений и освоить ее на примерах, приведенных в описании лабораторной работы.

    1. Написать cgi-приложения и html-документы, реализующие данные примеры.

    2. Разместить их на диске W и просмотреть результаты их выполнения.

  2. Продемонстрировать функционирование разработанных web-приложений преподавателю.

  3. Оформить отчет по результатам выполнения лабораторной работы.

  4. Ответить на вопросы преподавателя.

Требования к отчету

Отчет должен содержать:

  1. название и цель работы;

  2. краткие сведения о формате html-документа, скриптах и cgi-приложениях.

© Илюшечкин В.М., Илюшечкина Л.В. МИЭТ, 2003

© Серёгин А. Ю., МИЭТ, 2004

Соседние файлы в папке лабы