怎样用ASP建立BBS站点
怎样用ASP建立BBS站点
ASP(Active Server Pages)是一套微软开发的服务器端脚本环境,通过ASP我们可以结合HTML网页、ASP指令和ActiveX元件建立动态、交互且高效的各种Web服务器应用程序。由于ASP环境下的所有程序代码都在服务器端执行,因而不用考虑客户的浏览器是否支持。当程序执行完毕后,服务器仅将执行的结果返回给客户浏览器,这样也就减轻了客户端浏览器的负担,大大提高了交互的速度,可见ASP的优势相当明显。本文就向大家介绍一个用ASP建立BBS站点的实例。
第一步:
首先建立一个数据库用来存放留言,可以用ACESS的数据库,数据字段设置的典型为:ID,NAME,EMAIL,TITLE,CONN,ADDR等字段。在ACESS中的id字段为自动加'1'的字段。例如:本人的BBS站的设置为:ACESS数据库,数据库名为bbs,其中一个数据表为bbs,数据表的字段组成如上。接下来就要在服务器上设置DNS=bbs-lh并将数据库指向ACESS的数据库bbs所在目录和数据库名(bbs.mdb),即完成第一步的工作。
第二步:
第二步可以先建立bbs站的显示,设完成显示工作的asp脚本为test.asp,test.asp的程序代码如下:
<%
set conn = server.createobject("adodb.connection")
conn.open "bbs-lh"
set rs = conn.execute("select date,name,title,
addr,id from bbs order by id desc")
%>
<p>
</p>
<table border=4 width="760" bgcolor="#c0c0c0" bordercolor="#FFFFFF">
<tr>
<% for i=0 to rs.fields.count-3%>
<td <%if rs(i).name="date" then response.write"width=10%"
else if rs(i).name="name" then response.write"width=5%"
end if end if%>><% = rs(i).name %> </td>
<%next%>
</tr>
<%do while not rs.eof%>
<tr>
<% for i=0 to rs.fields.count-3%>
<td valign=top><% if RS(i).name="title" then
response.write"<a href=show.asp?id="&rs("id")&">"&rs(i)&"</a>"
response.write "<B> from </B>"
response.write "<font color=#FFFF00> "&rs("addr")&"
</font>"
else
response.write rs(i)
end if
%></td>
<%next%>
</tr>
<%rs.movenext
loop
rs.close
conn.close
%>
</table>
它所完成的工作为:将所有的留言的标题和作者,时间,留言者的IP地址以表格的形式显示在你的浏览器上,以便进行连接和阅读。
第三步:
用来显示留言的具体内容,执行脚本设为show.asp,其代码如下:
<%
id = Request.QueryString("id")
If id = "" Then
Response.Redirect("test.asp")
End If
%>
<%
set conn = server.createobject("adodb.connection")
conn.open "bbs-lh"
set rs = conn.execute("select name,title,email,
mem from bbs where id="&id&"")
%>
<center>
<% = rs("name") %>
<p>
</p>
<% = rs("title") %>
<p>
</p>
<% = rs("email") %>
<p>
</p>
<% = rs("mem") %>
</center>
第四步:
如何进行留言填写的asp脚本设为subbs.asp,代码如下:
<%
set conn = server.createobject("adodb.connection")
conn.open "bbs-lh"
sql="insert into bbs(name,email,title,mem,addr)values
('"&request.form("t1")&"','"&request.form("t2")&"',
'"&request.form("t3")&"','"&request.form("s1")&"',
'"&request.servervariables("remote_addr")&"')"
set rs = conn.execute(sql)
Response.Redirect("test.asp")
%>
第五步:
设计留言簿的书写界面guest.htm,html的代码如下(或为guest.asp):
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;
charset=gb2312">
<title>bbs</title>
<meta name="GENERATOR" content="Microsoft FrontPage
3.0">
</head>
<body background="Soapston.jpg">
<p align="center"><strong><big><big><font
color="#0000FF">
发表文章</font></big></big></strong></p>
<p> </p>
<form action="subbs.asp" method="POST">
<!--webbot bot="SaveResults" startspan U-File="_private/form_results.txt"
S-Format="TEXT/CSV" S-Label-Fields="TRUE" -->
<!--webbot bot="SaveResults" endspan--><p><font color="#0000FF">
您的姓名:</font><font color="#FF0000"><input type="text" name="T1"
size="20"></font></p>
<p><font color="#0000FF">您的email</font><font
color="#FF0000">
<input type="text" name="T2" size="23"></font></p>
<p><font color="#0000FF">文章标题:</font></p>
<p><textarea rows="7" name="S1" cols="41"></textarea>
</p>name="T3" size="23"></font></p>
<p><font color="#0000FF">文章内容:</font></p>
<p><textarea rows="7" name="S1" cols="41"></textarea></p>
<p><font color="#FF0000"> ; 注:在您的文章内容和文章标题中,请不要用";<;";";>;";的</font></p>
<p><font color="#FF0000">符号,谢谢合作.</font></p>
<p> ; ; ; ; ;
<input type="submit" value="发送"
name="action">
 ; ; ; ; ; ; ;
 ; ; ; ; ; ; ; ;
<input type="reset" value="清除" name="reset"></p>
</form>
<p> </p>
</body>
</html>
这样一个bbs站的基本结构就已经完成。在NT服务器上就可以完成留言和查询留言的工作。
(into21)