Построение списка при помощи ADO.
<HTML><HEAD>
<META HTTP-EQUIV="Content-Type" content="text/html; charset=windows-1251">
<TITLE>Using ADO</TITLE></HEAD><BODY>
<%
'Объявляем переменные
Dim objConnection
Dim objRecordset
' cоздаем объекты
Set objConnection = Server.CreateObject("ADODB.Connection")
Set objRecordset = Server.CreateObject("ADODB.Recordset")
' Устанавливаем подсоединение и выполняем запрос
objConnection.Open "Data", "", ""
objRecordset.Open "SELECT Name FROM Users", objConnection
%>
<!-- Строим список SELECT по набору данных -->
<SELECT SIZE=8>
<% Do While Not ObjRecordset.EOF %>
<!-- Создаем очередной элемент списка -->
<OPTION><%=objRecordset("Name")%>
</OPTION>
<% objRecordset.MoveNext
Loop %>
</SELECT></BODY></HTML>
Одна из основных задач в управляемом данными Web-приложении — управление информацией в объекте Recordset. Очень часто простой запрос возвращает гораздо больше данных, чем имеет смысл показывать. Давайте, например, посмотрим, что происходит, когда Вы обращаетесь к какой-либо поисковой системе в Интернете. Поисковая машина, получив ключевое слово, возвращает ссылки на узлы, где это ключевое слово встречается. Но зачастую обнаруживаются тысячи узлов, содержащих данное ключевое слово. Совершенно очевидно, что показать все эти узлы на одной Web-странице совершенно невозможно.
Выход состоит в разбиении на страницы (paging). Этот механизм реализован во всех поисковых системах для передачи за один раз некоей порции результатов запроса, скажем, из 10 записей. Теперь пользователь может эффективно работать с полученной информацией. Поддерживает разбиение на страницы и ADO — посредством нескольких свойств объекта Recordset: PageSize, PageCount и AbsolutePage.
При получении набора данных можно указать, что записи следует разбить на страницы. Количество строк набора данных, составляющих страницу, задается значением свойства PageSize. Затем можно определить общее количество страниц в наборе данных посредством свойства PageCount. А доступ к заданной странице обеспечивает свойство AbsolutePage.
В листинге 4.8 приведен полный пример, в котором пользователь может просматривать 10 записей за раз. Переменная сессии CurrentPage отслеживает текущую страницу. Пользователь может перейти к предыдущей порции данных или к следующему набору из 10 записей, выбрав одну из двух гипертекстовых ссылок на странице.
Дата добавления: 2015-11-04; просмотров: 668;