简单的做了一个,扫描一次数据库可得一棵树
-----index.asp------
1<html>
2<head>
3<title>浮点论坛</title></head>
4<body marginheight="0" marginwidth="0">
5<div align="center">
6<table border="0" cellpadding="0" cellspacing="0" height="24" width="100%">
7<tr>
8<td width="80"> </td>
9<td><a href="#form">发新贴</a></td>
10</tr>
11</table>
12<br/>
13<table border="0" cellpadding="0" cellspacing="0" width="90%">
set dbr = server.createobject("adodb.recordset")
dbr.pagesize = 50
dbr.CacheSize = dbr.pagesize
dbr.open "select * from forum where (isdel = 'n') order by id desc",application("oledb") ,1,1
msgcount=dbr.recordcount
msgpcount=dbr.pagecount
pagelist=request("pagelist")
if CINT(pagelist) > dbr.pagecount then pagelist = dbr.pagecount
if CINT(pagelist) < 1 then pagelist=1
dbr.AbsolutePage=pagelist
for i= 1 to dbr.pagesize
1<tr>
2<td align="left" colspan="2" valign="top" width="100%">
3<table border="0" cellpadding="0" cellspacing="0" width="100%">
4<tr>
5<td width="25%">姓名:```
6=rtrim(dbr("name"))
7```</td>
8<td width="25%">```
9 if rtrim(dbr("email"))&lt;&gt;"" then
rtrim(dbr("email"))
1 end if
2```</td>
3<td width="25%">时间:```
4= datevalue(dbr("thedate"))
5```</td>
6```
7 a= cdbl(dbr("id"))
8```
9```
10 next
11```
12<td width="25%"><a href="reply.asp?id=```
13=a
14```">回复</a></td>
15</tr>
16</table>
17</td>
18</tr>
19<tr>
20<td align="left" colspan="2" valign="top" width="100%">```
21=rtrim(dbr("title"))
22```</td>
23</tr>
24<tr>
25<td align="left" colspan="2" valign="top" width="100%">```
26=replace(server.htmlencode(rtrim(dbr("comm"))),chr(13),"<br/>")
27```</td>
28</tr>
29```
30 dbr.movenext
31```
32```
33 if dbr.EOF Then Exit For
34```
35```
36 next
37```
38<tr>
39<td align="right" height="30" width="500"><a href="index.asp?pagelist=```
40=CINT(pagelist)+1
41``` "><span class="link">&gt;&gt;更多</span></a></td>
42<td align="right" height="30"> </td>
43</tr>
44</table>
45<form action="add.asp" method="POST">
46<table border="0" cellpadding="0" cellspacing="0" width="90%">
47<tr>
48<td class="title" width="12%"><b>姓 名:</b></td>
49<td width="88%">
50<input class="name" name="name" size="30" type="text"/>
51</td>
52</tr>
53<tr>
54<td class="title" width="12%"><b>E-mail:</b></td>
55<td width="88%">
56<input class="box" name="email" size="30" type="text"/>
57</td>
58</tr>
59<tr>
60<td class="title" width="12%"><b>标 题:</b></td>
61<td width="88%">
62<input class="box" name="title" size="30" type="text"/>
63</td>
64</tr>
65<tr>
66<td class="title" valign="top" width="12%"><b>内 容:</b></td>
67<td width="88%">
68<textarea class="box" cols="30" name="comm" rows="5"></textarea>
69</td>
70</tr>
71<tr>
72<td width="12%"></td>
73<td width="88%">
74<input border="0" height="19" name="imageField" src="pic/send.gif" type="image" width="51"/>
75</td>
76</tr>
77</table>
78</form></div>
79</body>
80</html>
81```
82\-----replay.asp---------
83
84```
85 id = request("id")
86```
87```
88 set dbr = server.createobject("adodb.recordset")
89```
90```
91 dbr.open "select * from forum where (id=" & id & ")",application("oledb") ,1,1
92```
93```
94<html>
95<head>
96<title>浮点论坛</title></head>
97<body bgcolor="#FFFCF0" leftmargin="0" marginheight="0" marginwidth="0" topmargin="0">
98<div align="center">
99<form action="add.asp" method="POST">
100<table border="0" cellpadding="0" cellspacing="0" width="90%">
101<tr>
102<td class="title" width="12%"><b>姓 名:</b></td>
103<td width="88%">
104<input class="name" name="name" size="50" type="text"/>
105</td>
106</tr>
107<tr>
108<td class="title" width="12%"><b>E-mail:</b></td>
109<td width="88%">
110<input class="box" name="email" size="50" type="text"/>
111</td>
112</tr>
113<tr>
114<td class="title" width="12%"><b>标 题:</b></td>
115<td width="88%">
116<input ```"="" class="box" name="title" size="50" title")))="" type="text" value="RE:```
117=server.htmlencode(rtrim(dbr("/>
118<input ```"="" id")="" name="id" type="hidden" value="```
119=request("/>
120</td>
121</tr>
122<tr>
123<td class="title" valign="top" width="12%"><b>内 容:</b></td>
124<td width="88%">
125<textarea class="box" cols="48" name="comm" rows="5"></textarea>
126</td>
127</tr>
128<tr>
129<td width="12%"></td>
130<td width="88%">
131<input border="0" height="19" name="imageField" src="pic/send.gif" type="image" width="51"/>
132</td>
133</tr>
134</table>
135</form></div>
136```
137 dbr.close
138```
139```
140 set dbr = nothing
141```
142</body>
143</html>
144```
145\-------add.asp------
146```
147 if request("name")="" or replace(request("title"),"RE:","")="" then
148```
149```
150<html>
151<head>
152<title>浮点论坛</title></head>
153<body background="pic/bg_bbs.gif" leftmargin="0" marginheight="0" marginwidth="0" topmargin="0">
154<div align="center">
155<table border="0" cellpadding="0" cellspacing="0" width="450">
156<tr>
157<td class="title" height="60">姓名、标题不能为空</td>
158</tr>
159<tr>
160<td align="center" height="30"><a class="link" href="index.asp">返回</a></td>
161</tr>
162</table>
163</div>
164</body>
165</html>
166```
167```
168 response.end
169```
170```
171 end if
172```
173```
174 set dbr= server.createobject("adodb.recordset")
175```
176```
177 if request("id")="" then
178```
179```
180 dbr.open "select max(id)+1 as maxid from forum" ,application("oledb"),1,1
181```
182
183```
184 tid=cint(dbr("maxid"))
185```
186```
187 dbr.close
188```
189```
190 dbr.open "select top 0 * from forum",application("oledb"),1,3
191```
192```
193
194dbr.addnew
195dbr("id")=tid
196dbr("title")=request("title")
197dbr("comm")=request("comm")
198dbr("name")=request("name")
199dbr("email")=request("email")
200dbr("ip")=Request.ServerVariables("REMOTE_ADDR")
201dbr("isdel")="n"
202dbr("thedate")=cdate(now)
203dbr.update
204dbr.close
205
206```
207```
208 set dbr = nothing
209```
210```
211 response.redirect("index.asp")
212```
213```
214 dbr.close
215```
216```
217 else
218```
219```
220 d = request("id")
221```
222```
223 dbr.open "SELECT TOP 2 * FROM forum WHERE (id <= " & d & ") ORDER BY id DESC",application("oledb") ,1,1
224```
225```
226 if dbr.recordcount=1 then
227```
228```
229 inid=cdbl(dbr("id"))-(cdbl(dbr("id"))-0)/2
230```
231```
232 dbr.close
233```
234
235```
236 dbr.open "select top 0 * from forum",application("oledb"),1,3
237```
238```
239
240dbr.addnew
241dbr("id")=inid
242dbr("title")=request("title")
243dbr("comm")=request("comm")
244dbr("name")=request("name")
245dbr("email")=request("email")
246dbr("ip")=Request.ServerVariables("REMOTE_ADDR")
247dbr("isdel")="n"
248dbr("thedate")=cdate(now)
249dbr.update
250dbr.close
251
252```
253```
254 set dbr = nothing
255```
256```
257 response.redirect("index.asp")
258```
259
260```
261 elseif dbr.recordcount=2 then
262```
263```
264 maxid = cdbl(dbr("id"))
265```
266```
267 dbr.movenext
268```
269```
270 minid = cdbl(dbr("id"))
271```
272```
273 dbr.close
274```
275```
276 inid=maxid-(maxid-minid)/2
277```
278```
279= inid
280```
281```
282 dbr.open "select top 0 * from forum",application("oledb"),1,3
283```
284```
285
286dbr.addnew
287dbr("id")=inid
288dbr("title")=request("title")
289dbr("comm")=request("comm")
290dbr("name")=request("name")
291dbr("email")=request("email")
292dbr("ip")=Request.ServerVariables("REMOTE_ADDR")
293dbr("isdel")="n"
294dbr("thedate")=cdate(now)
295dbr.update
296dbr.close
297
298```
299```
300 set dbr = nothing
301```
302```
303 response.redirect("index.asp")
304```
305```
306 end if
307```
308```
309 end if
310```