
Проект Доска объявлений
Проект Поздравительная открытка
Проект Расписание сеансов
Сначала проверяется, вошел ли пользователь на данную страницу путем выбора категории на домашней странице:
If Len(Request.QueryString("CategorylD")) Then
Если он попал изданную страницу именно таким образом, извлекается название указанной категории в соответствий с ее идентификатором:
DBCommand = New•OleDbDataAdapter _
("Select CategoryName from Categories " _
& "Where CategqrylD= " _
& Request.QueryString("CategorylD"), DBConn)
Название помещается в таблицу CategoryName объекта DataSet:
DBCommand.Fill(DSPageData, _
"CategoryName")
Затем извлекаются все объявления, которые относятся к выбранной пользователем категории. Для извлечения только информации о дате из поля DatePlaced используется функция Convert SQL-сервера:
DBCommand = New OleDbDataAdapter _
("Select ClassifiedID, TitleText, " _
& "Convert(varchar(12),DatePlaced,107) " _
& "as TheDate, Price from Classifieds " _
& "Where CategorylD = " _
& Request.QueryString("CategorylD") _
& " Order By DatePlaced DESC" _
, DBConn)
Результаты выполнения запроса помещаются в другую таблицу объекта DataSet:
DBCommand.Fill(DSPageData, _
"Ads")
Итоговые данные выводятся на экран в элементе управления Label с именем IblMessage:
IblMessage.Text = "В категории "'"' _
& DSPageData.Tables("CategoryName"). _
Rows (0) .Item ("CategoryNaine") _
& """ имеется " _
& DSPageData.Tables("Ads").Rows.Count _
& " объявлений."
Элемент управления DataGrid связывается с объектом DataSet:
dgAds.DataSource = _
DSPageData.Tables("Ads").DefaultView
dgAds.DataBind
На следующем этапе проверяется, вошел ли пользователь на страницу путем задания текста для поиска на домашней странице:
Elself Len(Request.QueryString("SearchTerm")) Then
В этом случае необходимо извлечь все записи, которые соответствуют критерию поиска, заданному пользователем. Поиск производится в полях TitleText и Description.
DBCommand = New OleDbDataAdapter _
("Select ClassifiedID, TitleText, "
& "Convert(varchar(12),DatePlaced,107) " _
& "as TheDate, Price from Classifieds " _
& "Where TitleText Like '%"
& Replace (Request. QueryString ("SearchTerm"), "'","'")_
& "%' or Description Like '%" _
& Replace(Request.QueryString("SearchTerm"), "'", "'"') _
& "%' Order By DatePlaced DESC" _
, DBConn)
Извлеченные записи помещаются в объект DataSet:
DBCommand.Fill(DSPageData, _
"Ads")
Элемент DataGrid должен быть связан с объектом DataSet:
dgAds.DataSource = _
DSPageData.Tables("Ads").DefaultView
dgAds.DataBind
В заключение итоговые данные выводятся на экран в элементе управления Label с именем IblMessage:
IblMessage.Text = "Искомое слово """ _
& Request.QueryString("SearchTerm") _
& """ было найдено в " _
& DSPageData.Tables("Ads").Rows.Count _
& " объявлениях."
Если же пользователь вошел на страницу каким-то иным образом, он перенаправляется на домашнюю страницу:
Response.Redirect("./index.aspx")
|