Исходники и листинги ::: Остальное ::: Поисковая форма на ASP

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
  <%
  '------ Прочитать данные с поисковой формы --------------------------------
  AUT = Request.QueryString("Author")
  TIT = Request.QueryString("Title")
  SBJ = Request.QueryString("Subject")
  DUR = Request.QueryString("During")
  ORD = Request.QueryString("Order")
  TitleConjunctor = Request.QueryString("TitleSelector")
  AuthorConjunctor = Request.QueryString("AuthorSelector")
  SubjectConjunctor = Request.QueryString("SubjectSelector")
   
  If TitleConjunctor = 1 Then ' Получить значение первого селектора
  TConjunctor = "and"
  Else
  TConjunctor = "or"
  End If
   
  If AuthorConjunctor = 1 Then ' Получить значение второго селектора
  AConjunctor = "and"
  Else
  AConjunctor = "or"
  End If
   
  If SubjectConjunctor = 1 Then ' Получить значение третьего селектора
  SConjunctor = "and"
  Else
  SConjunctor = "or"
  End If
   
  '---Соединение с базой данных и формирование сложного SQL запроса 
  из составных компонент ------------
  Set db = Server.CreateObject("ADODB.Connection")
  db.Open "DSN=Articles;UID=sa;PWD=;"
   
  GenerQuery = "Select * From Articles " 'Основной запрос
  WhereQuery = "Where" 'Where_Выражение
  TitleQuery = " Title Like '" & TIT & "%' " 'Критерий для поля Заголовка
  AuthorQuery = " Author Like '" & AUT & "%' " 'Критерий для поля Автора
  SubjectQuery = " Subject Like '" & SBJ & "' " 'Критерий для поля рубрикатора
  OrderQuery = "Order By '" & ORD & "' DESC" 'Критерий для поля сортировки
   
  If SBJ = "Any" Then 'Любой рубрикатор
  If AUT = "" Then
  If TIT = "" Then
  SQLQuery = GenerQuery 'Оба поля (Автор и заголовок) пусты
  Else
  SQLQuery = GenerQuery + WhereQuery + TitleQuery 'Поле Автор пусто
  End If
  Else
  If TIT = "" Then
  SQLQuery = GenerQuery + WhereQuery + AuthorQuery 'Поле Заголовок пусто
  Else
  SQLQuery = GenerQuery + WhereQuery + AuthorQuery + AConjunctor + TitleQuery 'Оба не пусты
  End If
  End If
  Else 'Была указана рубрика
  If AUT = "" Then
  If TIT = "" Then
  SQLQuery = GenerQuery + WhereQuery + SubjectQuery
  Else
  SQLQuery = GenerQuery + WhereQuery + TitleQuery + TConjuctor + SubjectQuery
  End If
  Else
  If TIT = "" Then
  SQLQuery = GenerQuery + AuthorQuery + AConjunctor + SubjectQuery
  Else
  SQLQuery = GenerQuery + WhereQuery + AuthorQuery +
  AConjunctor + TitleQuery + TConjunctor + SubjectQuery
  End If
  End If
  End If
   
  If ORD <> "Default" Then 'Добавляем установленный режим сортировки
  If ORD = "Published" Then
  ORD = "ID"
  End If
   
  SQLQuery = SQLQuery + OrderQuery 'Формирование окончательного запроса
  End If
   
  'Response.Write SQLQuery
   
  '--------- Выполняем SQL запрос и формируем таблицу с результатами поиска 
  ------------------------------------
  Set rs = db.Execute(SQLQuery)
   
  If rs.Eof Then
  S = "Извините,совпадений не найденно."
  Response.Write S
  End If
   
  Cnt = 0
  Do While NOT Rs.EOF
  %>
  <tr><td>
  <%
  If rs.Fields("Article").value <> "No Text" Then
  Link = "<a href= http://localhost/ArtTempl.asp?id=" & rs.Fields("ID").value &
  ">" & rs.Fields("Title").value & "</a>"
  End If
   
  Response.Write Link & "<br>"
  Response.Write "<i>By " & rs.Fields("Author").value & "</i><br>"
  Response.Write "<i>Published: " & rs.Fields("Published").value & "</i>   "
  Response.Write "<i>(Subject: " & rs.Fields("Subject").value & ")</i><br>"
   
  ANN = rs.Fields("Annotation").value
  If ANN <> "NA" Then
  Response.Write ANN
  End If
  %>
  <hr NOSHADE WIDTH="100%"></td></tr>
  <%
  Rs.MoveNext
  Cnt = Cnt + 1
  Loop
  db.Close
  Set db = Nothing
  %>
  <b><%Response.Write Cnt
  Response.Write " статей найдено<br>"%>
  </b>
<<< Предыдущая работа

Вернуться в галерею исходников
Поисковая форма на ASP
Автор: Андрей Максимович*
Город: Томск
Дата: 07.05.2007  17:09
Комментариев: 1
Просмотров: 272
Оценка: 0 (0|0|0|0|0) [0]

Вернуться на главную
Авторский комментарий к работе: Поисковая форма на ASP
Вы не можете оценивать

КОММЕНТАРИИ К РАБОТЕ:
L-Zassik ::: комментарий от 15.08.2007 | 00:28
L-Zassik Посвященный (ур.10)
Очки: 3972
Город: Томск
Тв. работ: 50
Рег: 27.04.2006 (35)
Мне интерестно, вы зачем выкладываете листнинг с учебника по аспе, который йа вам давл 2 года назад?


--------------------
It's Good To Be Bad