asp毕业设计——基于asp+access的WEB网上留言板设计与实现(毕业论文+程序源码)——网上留言板

基于asp+access的WEB网上留言板设计与实现(毕业论文+程序源码)

大家好,今天给大家介绍基于asp+access的WEB网上留言板设计与实现,文章末尾附有本毕业设计的论文和源码下载地址哦。需要下载开题报告PPT模板及论文答辩PPT模板等的小伙伴,可以进入我的博客主页查看左侧最下面栏目中的自助下载方法哦

文章目录:

1、项目简介

  1. 本论文概述了ACCESS数据库及其相关的一些知识,着重论述ACCESS数据库和ASP的中间技术,构建一个简单的留言板。

  2. 具体的实现是构造一个留言板系统,能很方便的和同学沟通和交流。留言板具有功能强大、使用方便的特点。用户以个人的身份进入,查看留言,以及在留言板中写下自已要留言的内容。管理员可根椐管理员用户名和密码进入,进行适当的修改和删除。

  3. 在此设计中,主要的技术有:ASP,HTML,ADO等,用到的运行环境(操作系统,服务器)有WINDOWS,PWS,和IE 等,将它们集成在一个INTRANET(模拟INTERNET)的环境中,从而实现了设计。


2、资源详情

项目难度:中等难度
适用场景:相关题目的毕业设计
配套论文字数:9667个字40页
包含内容:整套源码+完整毕业论文


3、关键词:

留言板 网络数据库 ASP HTML

4、毕设简介

提示:以下为毕业论文的简略介绍,项目源码及完整毕业论文下载地址见文末。

引言
省略

第一章 绪论
1.1 设计思想
通过留言板,发布学校的重大活动安排与招生政策,增强家长与学校之间的联系,促进同学、家长、老师之间的感情,在Internet上实现完成部分校务,提高办事效率。

1.2 开发工具的选用及介绍
ASP的优势:
Active Server Pages:“动态服务器网页”,一般简称为“ASP”,ASP之所以能受到大家的重视与使用的原因,主要在于所产生的执行结果都是标准的HTML格式,而且这些程序是在网络服务端中执行,使用一般的浏览器(如IE 或Netscape)都可以正确地获得ASP的“执行”结果,并且将这ASP执行的结果直接在浏览器中“浏览”,不像VBScript或 JavaScript是在客户端(Client)的浏览器上执行,若使用VBScript来设计程序,客户端(Client)在IE浏览器中可以显示程序执行的结果,可是,客户端(Client)若使用Netscape浏览器就无法显示VBScript的执行结果。

ASP的特点:
任何开发工具皆可使用ASP。
只要使用一般的文书编辑程序,如Windows记事本,就可以编辑。当然,其他网页开发工具,例如,Dreamweaver、 FrontPage等也都可以;不过还是建议你用记事本来写,既省钱又方便,若是使用那些所见即所得的网页编辑来写ASP,可能会发生一些意想不到的离奇状态。

通吃各家浏览由于ASP程序是在网络服务器端中执行,执行结果所产生的HTML文件适用于不同的浏览器。
语言相容性高:
ASP与所有的ActiveX Script语言都相容,除了可结合HTML,VBScript、Java Script、Active X服务器组件来设计外,并可经由“plug-In(外挂组件模组)的方式,使用其他厂商(Third Party)所提供的语言。
隐密安全性高:

如果我们在浏览器中直接查看网页的原始代码,就只能看到HTML文件,原始的ASP程序代码是看不到的!这是因杰ASP程序先于网站服务(Web Server)端执行后,将结果转换成标准HTML文件,再传送到客户端(Client)的浏览器上,因此,我们所辛苦撰写的ASP程序并不会轻易地被看见进而被盗用。

易于操控数据库:
ASP可以轻易地通过ODBC(Open Database Connectivity)驱动程序连接各种不同的数据库,例如:Acess、Foxpro、dBase、Oracle等等,另外,ASP亦可将“文本文件”或是”Excel” 文件当成数据库用。

面向对象学习容易
ASP具备有面向对象(Object-Oriented)功能,学习容易,ASP提供了五种方便能力强大的内建对象:Request、Response、Sever、Application以及Session,同时,若使用ASP内建的“Application”对象或”Session”对象所撰写出来的ASP程序可以在多个网页之间暂时保存必要的信息。

FrontPage优点:
FrontPage优点就是“所见即所得”设计环境。FrontPage的设计视窗也可以用来预览网页,它显示的网页效果跟浏览器上显示的完全一样。FrontPage提供了HTML语言编写窗口,使程序编写更加简便。

因此,我选用了ASP结合FrontPage构建了留言板。

1.3 系统开发环境的选择

系统开发环境分硬件环境和软件环境两部分,ASP程序对系统的要求不是很高,因此建议以下的开发环境即可。

第二章 配置服务器
2.1 IIS的配置及主页发布
IIS 提供的基本服务:
WWW服务:支持最新的超文本传输协议(HTTP)1.1标准,运行速度更快,安全性更高,还可以提供虚拟主机服务。WWW服务是指在网上发布可以通过浏览器观看的用HTML标识语言编写的图形化页面的服务。IIS 允许用户设定数目不限的虚拟Web站点。

FTP服务:支持文件传输协议(FTP)。主要用于网上的文件传输。IIS允许用户设定数目不限的虚拟FTP站点,但是每一个虚拟FTP站点都必须拥有一个唯一的IP地址。IIS 不支持通过主机名区分不同的虚拟FTP站点。

MTP服务:支持简单邮件传输协议(SMTP)。IIS 允许基于Web的应用程序传送和接收信息。启动SMTP服务需要使用NT操作系统的NTFS文件系统。

除上述服务之外,IIS 还可以提供NNTP Service等服务。本篇将主要讨论其中最重要的WWW服务,读者在真正熟悉WWW服务之后,其它类型的服务也可做到触类旁通。

IIS 的设置(注:文章中“客户”指Web站点的访问者,“用户”指IIS 的使用者)

Web站点标识:
描述–用户指定该站点的名称。 IP地址–用户分配给该站点的IP地址(动态域名的用户,您可以使用默认的IP地址,选中"全部未分配",即可)。

在高级对话框中还可以进一步的设定该站点的IP地址,TCP端口号以及主机名称等(注:同一台Web服务器中,具有不同IP地址或不同主机名的不同站点称为虚拟主机)。 TCP端口–缺省值为80,用户可以根据自己的需要进行改动。

SSL端口–指定使用安全套接字层(SSL)的端口。
连接: 无限–不限制同时连接站点的用户数量。 限制到–读者可以根据需要限定在同一时刻连接站点的用户数量。 连接超时–如果访问用户在指定的时间范围内没有发出新的访问请求,Web服务器自动中断与该用户的连接。

省略

2.2 虚拟目录的介绍
每个 Internet 服务可以从多个目录中发布。通过以通用命名约定 (UNC) 名、用户名及用于访问权限的密码指定目录,可将每个目录定位在本地驱动器或网络上。虚拟服务器可拥有一个宿主目录和任意数量的其它发布目录。其它发布目录称为虚拟目录。

指定客户 URL 地址,服务将整个发布目录集提交给客户作为一个目录树。宿主目录是“虚拟”目录树的根。虚拟目录的实际子目录对于客户也是可用的。只有 http://www.服务支持虚拟服务器;而 FTP 和 gopher 服务则只能有一个宿主目录。

主目录位置一旦改变,所有Internet用户的请求都将被路由到这个新的目录位置,IIS也将把这个目录作为一个单独的站点来对待,并完成与各组件的关联。不过,有时IIS也可以把用户的请求指向主目录以外的目录,这种目录就称为虚拟目录。下面我们讲解虚拟目录是怎么回事。

我们知道,建站人员必须为建立的每个Internet站点都指定一个主目录。主目录是一个缺省位置,当Internet用户的请求没有指定特定文件时,IIS将把用户的请求指向这个缺省位置。代表站点的主目录一旦建立,IIS就会缺省地使这一目录结构全部都能由网络远程用户所访问,也就是说,该站点的根目录(即主目录)及其所有子目录都包含在站点结构(即主目录结构)中,并全部能由网络上的用户所访问。一般说来,Internet站点的内容都应当维持在一个单独的目录结构内,以免引起访问请求混乱的问题。特殊情况下,网络管理人员可能因为某种需要而使用除实际站点目录(即主目录)以外的其他目录,或者使用其他计算机上的目录,来让Internet用户作为站点访问。这时,就可以使用虚拟目录,即将想使用的目录设为虚拟目录,而让用户访问。

处理虚拟目录时,IIS把它作为主目录的一个子目录来对待;而对于Internet上的用户来说,访问时并感觉不到虚拟目录与站点中其他任何目录之间有什么区别,可以像访问其他目录一样来访问这一虚拟目录。设置虚拟目录时必须指定它的位置,虚拟目录可以存在于本地服务器上,也可以存在于远程服务器上。多数情况下虚拟目录都存在于远程服务器上,此时,用户访问这一虚拟目录时,IIS服务器将充当一个代理的角色,它将通过与远程计算机联系并检索用户所请求的文件来实现信息服务支持。

省略

第三章 使用Access 创建数据库
3.1 数据库的概念
什么是数据库呢?当人们从不同的角度来描述这一概念时就有不同的定义(当然是描述性的)。例如,称数据库是一个"记录保存系统"(该定义强调了数据库是若干记录的集合)。又如称数据库是"人们为解决特定的任务,以一定的组织方式存储在一起的相关的数据的集合"(该定义侧重于数据的组织)。更有甚者称数据库是"一个数据仓库"。当然,这种说法虽然形象,但并不严谨。严格地说,数据库是"按照数据结构来组织、存储和管理数据的仓库"。在经济管理的日常工作中,常常需要把某些相关的数据放进这样"仓库",并根据管理的需要进行相应的处理。例如,企业或事业单位的人事部门常常要把本单位职工的基本情况(职工号、姓名、年龄、性别、籍贯、工资、简历等)存放在表中,这张表就可以看成是一个数据库。有了这个"数据仓库"我们就可以根据需要随时查询某职工的基本情况,也可以查询工资在某个范围内的职工人数等等。这些工作如果都能在计算机上自动进行,那我们的人事管理就可以达到极高的水平。此外,在财务管理、仓库管理、生产管理中也需要建立众多的这种"数据库",使其可以利用计算机实现财务、仓库、生产的自动化管理。

数据库是存储在一起的相关数据的集合,这些数据是结构化的,无有害的或不必要的冗余,并为多种应用服务;数据的存储独立于使用它的程序;对数据库插入新数据,修改和检索原有数据均能按一种公用的和可控制的方式进行。当某个系统中存在结构上完全分开的若干个数据库时,则该系统包含一个"数据库集合"。

使用数据库可以带来许多好处:如减少了数据的冗余度,从而大大地节省了数据的存储空间;实现数据资源的充分共享等等。此外,数据库技术还为用户提供了非常简便的使用手段使用户易于编写有关数据库应用程序
数据库软件的种类有很多种,如:SQL、Foxpro、Microsoft Access等等。但是为操作方便,我们选择Microsoft Access数据库。

3.2 新建一个数据库
省略

3.3 配置ODBC数据源
ODBC管理器(Administrator)它负责安装驱动程序,管理数据源,并帮助程序员跟踪ODBC的函数调用。在ODBC中,应用程序不能直接存取数据库,它必须通过管理器和数据库交换信息。ODBC管理器负责将应用程序的SQL语句及其他信息传递给驱动程序,而驱动程序则负责将运行结果送回应用程序。运行32bit ODBC管理器后,出现一个主对话框,它的主要内容是要求用户输入一个数据源,所谓数据源就是数据库位置、数据库类型以及ODBC驱动程序等信息的集成。数据源负责将运行结果送回应用程序。应用程序、ODBC管理在使用之前必须通过ODBC管理器进行登记和连接,启动ODBC管理器后,选取Add按钮,根据自己的数据库类型,选择相应的ODBC驱动程序,然后输入数据源名(Data Source Name)和数据库文件名(Database Name),完成这些步骤后,以后的应用程序就能够通过ODBC管理器的数据源直接操纵数据库。

1、 用户DSN:ODBC用户数据源存贮了如何与指定数据库提供者连接的信息。只对当前用户可见,而且只能用于当前机器上。这里的当前机器是只这个配置只对当前的机器有效,而不是说只能配置本机上的数据库。它可以配置局域网中另一台机器上的数据库的。

2、 系统DSN: ODBC系统数据源存贮了如何指定数据库提供者连接的信息。系统数据源对当前机器上的所有用户都是可见的,包括NT服务。也就是说在这里配置的数据源,只要是这台机器的用户都可以访问。

3、 文件DSN:ODBC文件数据源允许用户连接数据提供者。文件DSN可以由安装了相同驱动程序的用户共享。这是界于用户DSN和系统DSN之间的一种共享情况。

4、 驱动程序:这页列出了本机上所有安装的数据库驱动程序。里面列举了每个驱动程序的名称,版本,提供商公司,驱动程序文件名,以及安装日期。

5、 跟踪:ODBC跟踪允许创建调用ODBC的日志,提供给技术人员查看。里面可设定日志的路径和文件名。技术人员通过这里面的信息可以看到本机上所有的数据库访问的时间,用户,以及出错信息等情况。也可以通过这个辅助调试应用程序,可以启动Visual Studio的分析器,来进行ODBC的跟踪。

6、 连接池:连接池允许应用程序重用原来打开的的连接句柄,这样可以节省到服务器的往返过程。

省略

第四章 留言板的结构设计与实现
4.1 用户、管理员浏览模块
在这里插入图片描述

(图4.1)
此模块的功能是用户和管理员都能利用该模块浏览所有的留言内容,此模块不用注册即可使用,每页由7条记录组成,具有翻页功能,具体的设计步骤如下(此模块的图片如图3.1)。
下面的ASP代码实现显示表stu中的内容:

<%response.buffer=true%>
<html>
<head>
<title>留言板</title>
</head>
<%'========================显示数据库表stu中的信息=======================
   sql="select * from lyb "
  set rs=server.createobject("ADODB.Recordset")
  rs.Open sql,conn,1
  numzhuce=rs.RecordCount
  page=request.querystring("page")           '接收上一页、下一页的页号 
     if len(page)>0 and isnumeric(page) then
           page=int(page)
     else
           page=1
     end if
     if not rs.eof  then
          size=7
		  rs.PageSize=size           '每页记录数
          TotlePage=rs.PageCount     '总页数
        TotlePage=int(numzhuce/size)
		  if (numzhuce mod size)>0 then TotlePage=TotlePage+1  '总页数
		  if page<1 or page>TotlePage then
			  page=1
			  rs.AbsolutePage=page  '当前页 
		  else
		      rs.AbsolutePage=page  '当前页 
          end if
	      num=1                    '循环变量初值
%>

以上的内容分别把接收到的数据放在变量中,下面的代码的功能是显示出这些信息。

<td width="545" height="91" valign="top">
     <font size="2">
       <%while not rs.eof and num<=size%>
       <font color="#FF00FF">
       [留言主题]</font><%=rs("主题")%><br>
    <font color="#FF00FF">
    [留言内容]</font><%=rs("内容")%><br>
    &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp                                  
    <%=rs("昵称")%>&nbsp                               
    [<%=rs("时间")%>] <br>
    <font color="#0000FF">
    +---------------------------------------------------------------------+</font> <br>
    <%rs.movenext
            num=num+1
wend
rs.close
set rs=nothing%> 
        </font>
       </td>
  </tr>
  <tr>
    <td width="545" height="91" valign="top">
<font size="2">
<a href="lyb.asp?page=1">[第一页]</a> 
  <% select case page
     case 1:            '只有下一页
         if totlepage>1  then
%>
          <a href="lyb.asp?page=2">[下一页]</a>[第<%=page%>页/共<%=TotlePage%>页][共<%=numzhuce%>条记录] 
          <% else %>
          第<%=page%>页/共<%=TotlePage%>页</font> 
          <% end if %>
     <% case TotlePage:    '只有上一页%>
          <a href="lyb.asp?page=<%=page-1%>">[上一页]</a>[<%=page%>页/共<%=TotlePage%>][<%=numzhuce%>条记录]  
      <% case else:  %>
          <a href="lyb.asp?page=<%=page-1%>">[上一页]</a> 
          <a href="lyb.asp?page=<%=page+1%>">[下一页]</a> 
          [<%=page%>页/共<%=TotlePage%>][<%=numzhuce%>条记录]  
      <%  end select %>
</font>
<%end if%>
    </td>

此模块用到了RecordCount、request.querystring等方法以及一些翻页的技巧。由于篇幅限制,这里只给出了一部分比较重要的代码,其它的简略。

4.2 用户留言及修改模块

该模块的功能是,用户可以在这里把自己的留言写在这里,如果其它用户浏览里,就可以看到此用户的留言(模块的缩略图如下3.2)。

在这里插入图片描述

(图4.2)
该模块由留言昵称、留言QQ、电子信箱、个人网站、留言主题和留言内容组成,其中后面有带星号的为必填项,其它的为选填项,写完之后单击写好了,即可提交,按返回上页,直接返回到首页。此页中用到了表单提交的一些技术,相关代码如下:

<script language="javascript">
function presub1(f) {
if(f.t1.value=="")
{
  alert("昵称不能为空");
  return false;}
else if(f.t5.value=="")
{
  alert("主题不能为空");
  return false;}
  else if(f.s1.value=="")
{
  alert("请输入正文内容");
  return false;}
else
  return true;
}
</script>

以上这段程序的功能是利用JAVA脚本进行本地验证,当用户的表单里填入空值或者不正确值的时候给出相应的提示。无需通过服务器。

这句代码的功能是将整个表单以post方式发送到xly1.asp文件里。

4.3 用户注册模块
此模块的功能是用户可以在这里注册成为会员,有一些比普通用户更有一些权限。下图是注册的缩略图。
在这里插入图片描述

(图4.3)
该模块的具体设计和代码如下:

<script language="javascript">
function presub1(f) {
if(f.yhm.value=="")
{
  alert("用户名不能为空");
  return false;}
else if(f.kl.value=="")
{
  alert("密码不能为空");
  return false;}
  else if(f.kl.value!=f.qrkl.value)
{
  alert("两次输入密码不一致");
  return false;}
else if(f.zjhm.value=="")
{
  alert("请输入证件号码");
  return false;}
else
  return true;
}
</script>

以上程序是本地验证,要求输入的内容不能为空或者内容不合法。

<%
set rs=server.createobject("adodb.recordset")
rs.open "select * from news","dsn=ql;"
yhm=request("yhm")
kl=request("kl")
qrkl=request("qrkl")
zjhm=request("zjhm")
lxfs=request("lxfs")
dh=request("dh")
dw=request("dw")
%>
<html>
<head>
<title>注册信息</title>
</head>
<body>
<table border="1" width="100%" height="334">
  <tr>
    <td width="14%" height="61"></td>
    <td width="86%" height="61">您注册的信息:</td>
  </tr>
  <tr>
    <td width="14%" height="261"></td>
    <td width="86%" height="261" valign="top"><%=request("yhm")%><p>
    <%=request("kl")%><p>
    <%=request("qrkl")%><p>
    <%=request("zjhm")%><p>
    <%=request("lxfs")%><p>
    <%=request("dh")%><p>
    <%=request("dw")%><p>
    </td>
  </tr>
</table>
</body>
</html>

以上程序把注册信息发送到服务器的数据库,并在屏幕上显示出来。

4.4 管理员登陆模块
在这里插入图片描述

(图4.4)
该模块的功能是管理员可以在这里登陆,可以在线的管理这些留言,管理员有特殊的权限,做普通用户不可以做的事情,比如,可以将留言删。(该模块的缩略图如3.3)具体的实现和代码如下:

<%response.buffer=true%>
<%response.expires=0%>
这两名话的作用是打开内存中的缓冲区。
<script language="javascript">
function presub(f) {
if(f.usname.value=="")
{
  alert("请输入用户名");
  return false;}
else if(f.uspas.value=="")
{
  alert("请输入密码");
  return false;}
  else
  return true;
}

</script>

以上这段程序的功能是利用JAVA脚本进行本地验证,当管理员输入的用户名和密码为空值或者不正确值的时候给出相应的提示

4.5 管理员回复与删除留言模块
此模块的功能是管理员可以进入,并且可以进行增加和删除等功能,(此模块的缩略图如3.4)具体的实现方和代码如下:
在这里插入图片描述

(图4.5)
当用户点删除时,弹出提示,询问是否删除,如果确定点是,否则点取消。

<%response.buffer=true%>
<%
set rs=server.createobject("adodb.recordset")
rs.open "select * from lyb","dsn=stu;"
%>
<%set cn=server.createobject("adodb.connection")
cn.open"dsn=stu;"
%>
定义缓冲区和连接数据源。
<!--#include file="conn.asp"-->
<%
       username=request.querystring("username") 
    
       if trim(username)<>"" then
        sql="delete  from lyb where 昵称='"& username  & "'"
        cn.execute sql   
       end if
%>
<%'***************************************显示数据库表stu中的信息***************************************
   sql="select * from lyb "
  set rs=server.createobject("ADODB.Recordset")
  rs.Open sql,conn,1
  numzhuce=rs.RecordCount
  page=request.querystring("page")           '接收上一页、下一页的页号 
     if len(page)>0 and isnumeric(page) then
           page=int(page)
     else
           page=1
     end if
     if not rs.eof  then
          size=7
		  rs.PageSize=size           '每页记录数
          TotlePage=rs.PageCount     '总页数
        TotlePage=int(numzhuce/size)
		  if (numzhuce mod size)>0 then TotlePage=TotlePage+1  '总页数
		  if page<1 or page>TotlePage then
			  page=1
			  rs.AbsolutePage=page  '当前页 
		  else
		      rs.AbsolutePage=page  '当前页 
          end if
	      num=1                    '循环变量初值
%>
把总页数和每页的内容分别赋给变量。
<% ' ****************************删除确认******************************************%>
  <script language=javascript>
   function chkdel() {
   var talk = window.confirm("请确定是否删除该条记录!");
   if (talk==false) {return false;} 
  }
  </script>
确认是否删除该记录。
<td width="1293" height="182" valign="top">
                    <font size="2">
       <%while not rs.eof and num<=size%>
     <font color="#FF00FF">  
       [留言主题]</font><%=rs("主题")%>
    <br>
    <font color="#FF00FF">
    [留言内容]</font><%=rs("内容")%><br>
    &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp              
    <%=rs("昵称")%>&nbsp [<%=rs("时间")%>]<font color="#0000FF"> <br> 
    <font color="#0000FF">
    +---------------------------------------------------------------------+&nbsp;
    <a href="lybxg.asp?username=<%=rs("昵称")%>" οnclick="return  chkdel();" >删除?</a>
       </font> <br>
    <%rs.movenext
            num=num+1
wend
rs.close
set rs=nothing%> 
        </font></font>
    <font size="2">
            <a href="lybxg.asp?page=1">[第一页]</a> 
  <% select case page
     case 1:            '只有下一页
         if totlepage>1  then
%>
          <a href="lybxg.asp?page=2">[下一页]</a>[<%=page%>页/共<%=TotlePage%>][<%=numzhuce%>条记录] 
          <% else %><%=page%>页/共<%=TotlePage%></font> 
          <% end if %> 
     <% case TotlePage:    '只有上一页 
%>
          <a href="lybxg.asp?page=<%=page-1%>">[上一页]</a>[<%=page%>页/共<%=TotlePage%>][<%=numzhuce%>条记录]   
      <% case else:  %>
          <a href="lybxg.asp?page=<%=page-1%>">[上一页]</a>  
          <a href="lybxg.asp?page=<%=page+1%>">[下一页]</a>  
          [<%=page%>页/共<%=TotlePage%>][<%=numzhuce%>条记录]   
      <%  end select %>
<%end if%> 
            </td>

4.6 其他程序模块

以上几节简单的介绍了几个模块的一些比较重点的程序段,但是在本节中介绍一下几个在表面上看不到的,但是却起着相当重要的一些代码。

<%sj=date()
aaa="'"&request("T1")&"','"&request("T2")&"','"&request("T3")&"','"&request("T4")&"','"&request("T5")&"','"&request("s1")&"','"&sj&"'"%>
<%set cn=server.createobject("adodb.connection")
cn.open"dsn=stu;"
%>
<%strsql="insert into lyb(昵称,qq,邮箱,网站,主题,内容,时间) values("&aaa&")"
cn.execute(strsql)
%>
<%cn.close
set cn=nothing%>
<%response.redirect"lyb.asp"%>

以上这段代码是在后台运行的,该网页是个空的,什么也不显示,当用户写完留言的时候,把表单里所有的东西都要提交到这里,利用ASP提供的insert int 等语句把他传送到服务器的数据库的表格里。

<%response.buffer=true%>
<%usname=request("usname")
uspas=request("uspas")
set rs=server.createobject("adodb.recordset")
rs.open "select * from password","dsn=stu;"
%>
<html>
<head>
<body>
<%while not rs.eof
if usname=rs("用户名") and uspas=rs("密码") then
%>
<%response.redirect "lybxg.asp"%>
<%response.end%>
<%end if
rs.movenext
wend
rs.close
set rs=nothing%>
<%response.redirect"lybgly.asp"%>
</body>
</html>

该程序段的功能是,接收用户名和密码,并把用户名和密码发送到服务器的数据库里验证,如果和数据库里的一样,则可以登陆,否则提示用户名或密码错误。

<%
    constr="DBQ="+server.mappath("stu.mdb")+";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};" 
    set conn=Server.CreateObject("ADODB.connection") 
    conn.open constr 
%>  

连接数据源文件。

后记
上述就是本人留言板系统全部的设计和开发过程。本系统经历了从系统问题的提出—系统可行性分析—系统数据库的设计—总体的功能模块设计—详细设计—最后到程序的实现,就是以这样的一个思路完成的整个系统的开发。

省略

参考文献
[1]. 巧学巧用Dreamweaver、Fireworks、Flash制作网页.北京:人民邮电出版社.2000
[2]. ASP入门与实例演练薄.小志编著.北京:中国青年出版社.1999
[3]. 数据库原理及应用.李卓铃.北京:电子工业出版社.2001
[4]. ASP程序设计.谭浩强.北京:清华大学出版社.2000

附件:系统程序文件清单
stu.mdb Microsoft Access 2000 数据库表文件
index.asp 系统主页
xly.asp 用户写留言
lybgly.asp 留言板管理员登陆
lybxg.asp 留言板管理员修改
xly1.asp 把用户写的留言发送到服务器
login.asp 验证管理员用户名
conn.asp 连接数据源文件


5、资源下载

本项目源码及完整论文如下,有需要的朋友可以点击进行下载。如果链接失效可点击下方卡片扫码自助下载。

序号毕业设计全套资源(点击下载)
本项目源码基于asp+access的WEB网上留言板设计与实现(源码+文档)_asp_BS架构_网上留言板.zip
  • 1
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

毕业设计方案专家

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值