Дополнительные возможности формирования веб-страниц
Элемент управления для работы с базой данных
Теперь, чтобы иметь возможность обращаться к базе данных, поместим на страницу элемент управления – он называется Tabular Data):
<
OBJECT
ID
=
"hudlit"
CLASSID
=
"clsid:333C7BC4-460F-llDO-BC04-0080C7055A83"
BORDER
=
"0"
WIDTH
=
"0"
HEIGHT
=
"0"
>
<
PARAM
NAME
=
"DataURL"
VALUE
=
"books.txt"
>
<
PARAM
NAME
=
"UseHeader"
VALUE
=
"True"
>
<
/
OBJECT
>
Может показаться, что это выглядит “страшно”, но не пугайтесь, на самом деле все очень просто. Давайте разберемся. Элемент управления помещается на страницу с помощью тега <OBJECT>. При этом атрибут 1D= – это, как обычно, уникальное имя объекта. Столь необъятно выглядящий атрибут CLASSID= является всего лишь идентификатором (проще говоря, номером) соответствующей системной подпрограммы. Всякий раз, когда необходимо вставить элемент управления Tabular Data, приходится вводить этот идентификационный номер – clsid:
333C7BC4
-
460F
-
11DO
-
BC04
-
0080C7055A83
У других элементов управления другие номера, такие же длинные.
В первом из тегов <PARAM> мы связываем элемент управления с файлом базы данных. Здесь предполагается, что этот файл называется books.txt.
Второй тег <PARAM> указывает, что в базе данных первая строка используется как заголовочная. Это необходимо, поскольку далее мы будем o6pа-щаться к полям через их заголовки.
Динамическое формирование таблицы
Далее напишем таблицу, в каждой строке которой выводятся сведения о свободной книге. Хитрость состоит в том, что в коде страницы мы укажем только одну строку таблицы. На самом же деле их будет создано столько, сколько записей будет выводиться на экран.
Чтобы связать таблицу с элементом управления, используем атрибут DATASRС=:
<
TABLE
DATASRC
=
"#hudlit"
>
Обратите внимание на то, что мы указываем здесь не файл базы данных, а имя элемента управления, связанного с этим файлом. Теперь мы можем определить строку таблицы. В тех местах, куда нужно вставить значение кого-либо поля из базы данных, необходимо использовать атрибут DATAFLD=. Его удобно устанавливать в тегах <DIV> и <SPAN>:
<
TR
>
<
TD
>
<
SPAN
DATAFLD
=
"Author"
>
<
/
SPAN
>
,
«
<
SPAN
DATAFLD
=
"Name"
>
<
/
SPAN
>
»
,
<
SPAN
DATAFLD
=
"Size"
>
<
/
SPAN
>
кбайт.
<
SPAN
DATAFLD
=
"File"
DATAFORMATAS
=
"html"
>
<
/
SPAN
>
<
/
TD
>
<
/
TR
>
Посмотрите внимательно на этот код. Здесь определена одна строка таблицы, состоящая из одной ячейки (можно было сделать и по-другому, например, значение каждого поля поместить в свою ячейку). В этой ячейке последовательно отображаются: значения первого поля (автор книги), за – пятая, открывающая кавычка, значение второго поля (название книги), закрывающая кавычка, запятая, значение третьего поля (размер файла), пробел, слово “кбайт”, точка и значение четвертого поля (гиперссылка для загрузки текста книги). Обратите внимание на то, что в последнем случае нам пришлось использовать атрибут DATAFORMATAS='html', чтобы указать, что в базе данных содержатся НТМL-тетта. Если бы мы забыли применить этот атрибут, то в окне браузера ссылка отобразилась бы в виде исходного кода.
Собственно говоря, нам осталось только поставить закрывающие теги:
<
/
TABLE
>
<
/
BODY
>
<
/
HTML
>
Все остальное сделает элемент управления Tabular Data. Он “пройдется” по всем записям файла базы данных, и для каждой из них автоматически создаст новую строку таблицы.