当前位置: 首页 > 图文教程 > 网络编程 > ASP > 用ASP实现网页BBS

ASP
session的用法具体解说
模仿PHP写的ASP分页
用排序串字段实现树状结构(例程:保存贴子内容)
Recordset对象方法详解
为Html 的Select 加一个提示语和输入方法
PerlScript编写ASP
嘿,大家瞧瞧这老外在页面之间传递元素的办法
防止使用者按上一頁按鈕
利用owc建立EXECL的例子
ASPHttp使用范例-远程读取别人的页面,并自动写入库
实现文件下载而不是由ie打开的代码
ASP在Scripting.Dictionary对象的作用是什么?
一种效率极高的分类算法(转--非常好,帮助很大对于想做好asp的朋友)
论坛关键技术,树状记录表的堆栈展开
例子:文本搜索
用ASP实现播放Flash的例子
利用global.asa计划执行程序(转)
关于如何保障Winnt +asp +sql web站点的安全经验
用Asp修改注册表
优化MICROSOFT ACCESS提高速度

用ASP实现网页BBS


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 26 ::
收藏到网摘: n/a

       传统的网页BBS大多是采用CGI模式实现的,它的实现要求编程者既要掌握编程语言如Perl或C等,又要了解关于CGI模式的各项技术内容,因此要制作自己的网页BBS确实困难不小。ASP(Active Server Pages 动态服务器主页)的出现,使我们眼前一亮,能不能利用ASP实现网页BBS呢?回答当然是肯定的。ASP的诱人之处就在于它提供了一种简单易学的脚本,并带有许多内置的对象,从而提供了一条简捷的编程之路。
  
     该BBS主要由用户注册(浏览器端)、用户注册(服务器端)、加帖子(浏览器端)、加帖子(服务器端)、帖子具体内容的显示和回复以及所有帖子的显示六个部分组成,其中用户信息存放在数据库author.mdb中,帖子存放在数据库bbs.mdb中。它们均为ACCESS数据库,结构分别如表1、表2所示。
  
  表1 author.mdb
  
  
  字段名 数据类型 长度 说明
  Authname 文本 24 用户名
  Password 文本 10 密码
  
  
  
  表2 bbs.mdb
  
  
  字段名  数据类型  长度  说明
  ID     文本    4  帖子的编号
  Authname  文本    24  用户名
  Subject   文本   80   主题
  Content   备注      内容
  Adddate 日期/时间     加贴的日期
  Visitnum  数字  长整型  访问人数
  Answernum  文本  4   所回复帖子的编号
  (缺省为本身的编号)
  Addtime  日期/时间     加贴的时间
  Topnum   文本   4   第一层回复帖子的编号
  
  
  具体实现方法如下所示,其中asp文件和数据库存放在“/hosp/asp"中,其它htm
  文件存放在“/hosp"文件中,img文件存放在“/hosp/images"。
  
  1、 用户注册(浏览器端)login.htm:由用户输入相关信息,通过表单传送到服
  务器。
  
  
  <html>
  <head><title> register a new user</title><head>
  <body>
  <FORM METHOD="POST" ACTION="/hosp/asp/register.asp"><P>
  <H2>为了标识方便,请您注册一个用户名称</H2>
  用户:<INPUT TYPE="TEXT" name="name" SIZE="24"><P>
  密码:<INPUT TYPE="password" name="password" SIZE="24"><P>
  <INPUT TYPE=SUBMIT VALUE="注 册">
  <INPUT TYPE=RESET VALUE="清 除">
  <a href="/hosp/asp/dispbbs.asp">返回论坛</a><P>
  </body>
  </html>
  
  2、 用户注册(服务器端)Register.asp:利用REQUEST.FORM("表单栏位名")接收表单信息,采用ADO技术与数据库author.mdb连接,并将表单信息存入author.mdb中。
  
  <html>
  <head><title> 存用户信息 </title></head>
  <body>
  <!-- 取客户浏览器输入的用户名和密码 -->
  <% name=REQUEST.FORM("name")
  code=REQUEST.FORM("password")
  <!-- 与author.mdb连接 -->
  Set Connection=Server.CreateObject("ADODB.Connection")
  Connection.Open "author"
  Set RS=Connection.Execute("SELECT * FROM author")
  <!-- 如果该用户名已存在,请重输,否则存入数据库 -->
  If Not RS.EOF Then %>
  该用户名已被注册,请您重新<a href="/hosp/login.htm">注册</a>新用户名!
  <% Else
  Connection.Execute("INSERT INTO author(authname,password) Values('" &name& "','" &code& "')")
  RS.Close
  Connection.Close %>
  <CENTER><B><% =name %></B> 您已注册成功!<P>
  <a href="/hosp/asp/dispbbs.asp">返回论坛</a></CENTER>
  <% End If %>
  </body>
  </html>
  
   
  
  3、 加帖子(浏览器端)bbs_add.htm:由用户输入待加入帖子的相关信息,并传到服务器。
  
  
  <html>