




已阅读5页,还剩31页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
李志伟:基于ASP的网上简易论坛的设计与实现1引言1.1选题背景Internet是目前世界上最大的计算机互联网络,它遍布全球,将世界各地各种规模的网络连接成一个整体。作为Internet上一种先进的,易于被人们所接受的信息检索手段,World Wide Web(简称WWW)发展十分迅速,成为目前世界上最大的信息资源宝库。据估计,目前Internet上已有上百万个Web站点,其内容范围跨越了教育科研、文化事业、金融、商业、新闻出版、娱乐、体育等各个领域,其用户群十分庞大,因此,建设一个好的Web站点对于一个机构的发展十分重要。近年来,随着网络用户要求的不断提高及计算机科学的迅速发展,特别是数据库技术在Internet中的广泛应用,Web站点向用户提供的服务将越来越丰富,越来越人性化1。我们发现这样一个事实,一个用户在访问一个网站时一般来讲只对该网站的部分内容感性趣,而且这种兴趣会持续一段时间。这点启发了我们,如果能根据用户的喜好为不同的用户显示其个性化的页面,即着重显示该用户感兴趣的内容,将为用户节约大量的检索时间,而且这样的网页显然是更具有吸引力的。一些站点已经在这方面作出了一定的尝试,通常采用的方法是,在用户登陆时为其提供一系列的选项,使用户能够对站点进行一些自主的设置。这样做能够使站点呈现一定程度的个性化,但是对用户来讲,还是比较烦琐,而且在用户了解一个站点前让其对站点进行设置,其结果未免有些粗糙。于是我们构想了这样一种方案,对用户登陆后的动作进行跟踪,分析,发掘用户点击的规律,即用户先后点击的关联规则,这样,在用户点击一个主题(链接)之后,系统能够自动生成一个页面,其中包含了该主题下用户经常关注的内容(若干链接),这样便在无须用户作出任何额外工作的情况下实现了为用户量身订做的个性化页面。要实现这样的功能,离不开后台数据库的支持。用户验证信息,收集到的用户点击信息,主题层次信息,分析得出的关联规则表等大量的数据都由数据库管理系统管理。本文中数据库服务器端采用了SQL Server2000数据库作为ODBC(Open DataBase Connectivity )数据源,并以先进的ADO(ActiveX Data Objects)技术进行数据库存取等操作,使Web与数据库紧密联系起来。整个个性化页面生成系统主要由使用Dreamweaver_MX开发的关联规则采掘系统和利用IIS+ASP技术实现的个性化Web页面生成器两部分组成。本文作者主要完成Web服务器端的用户管理、帖子管理、数据库管理等设计、实现与完善以及整个实验网站的组织建立和测试工作2。1.2 ASP技术简介Microsoft Active Server Pages 即我们所称的ASP,其实是一套微软开发的服务器端脚本环境。Active Server Page 是创建动态网页的一个很好的工具,它起一种编程语言的作用,可以利用它编写动态产生HTML的程序代码。因此,只要用户浏览Web站点并请求一个ASP页,Web服务器就可以处理相应的ASP代码,生成HTML代码,然后将它传递到用户浏览器并显示出网页。ASP程序的优点:(1)ASP使用VBScript脚本语言直接源于VB语言,秉承了VB简单易学的特点,掌管起来非常容易。(2)无须编译,容易编写,可在服务器端直接执行。(3)与浏览器无关,客户端只要使用可执行HTML码的浏览器,即可浏览ASP所设计的网页内容。(4)ASP能与任何ActiveX scripting语言相容。除了可使用VBScript或JavaScript语言来设计外,还通过plug-in的方式,使用由第三方所提供的其他脚本语言。(5)ASP技术的处理速度相当快,并且其安全性也很高,ASP的源程序,不会被传到客户浏览器,因而可以避免所写的源程序被他人剽窃,也提高了程序的安全性。(6)ASP的对象和组件:ASP常用五大内部对象包括Request,Response,Server,Application,Session3。1.3 SQL Server 2000 技术简介SQL Server 是基于客户机/服务器的关系型数据库管理系统。SQL Server 使用客户机/服务器结构把工作负荷分解成分别在服务器和客户机上执行的任务。客户机应用程序可以运行在一个或多个客户机上也可以运行在服务器上,负责向用户提供数据;服务器负责管理和分配服务器资源。SQL Server 2000 是Microsoft 公司推出的SQL Server 数据库管理系统的最新版本。它继承了SQL Server 7.0版本的优点,同时又比它增加了许多更先进的功能,具有使用方便、可伸缩性好、与相关软件集成程度高等优点4。1.4利用ADO访问数据库ADO(ActiveX Data Objects)是一种操作Microsoft所支持的数据库的新技术。在ASP中,ADO可以看作是一个服务器组件(Server Component),更简单点说,是一系列的对象,应用这些功能强大的对象,即可轻松完成对数据库复杂的操作。本文中个性化页面的实现便大量地用到了ADO技术。具体的操作步骤可以归纳为以下几步:(1)创建数据库源名(DSN)(2)创建数据库链接(Connection)(3)创建数据对象(4)操作数据库(5)关闭数据对象和链接1.5 SQL语句简介1.SQL 语句简介SQL全称是“结构化查询语言(Structured Query Language)”,SQL包含4个部分:(1)数据查询语言DQL-Data Query Language SELECT(2)据操纵语言DQL-Data Manipulation Language INSERT, UPDATE, DELETE (3)数据定义语言DQL-Data Definition Language CREATE, ALTER, DROP(4)数据控制语言DQL-Data Control Language COMMIT WORK, ROLLBACK WORK2.SQL的优点(1)非过程化语言(2)统一的语言 SQL为许多任务提供了命令,包括:查询数据,数据更新,在表中插入记录,在表中修改记录,在表中删除记录,建立,修改和删除数据对象,控制对数据和数据对象的存取,保证数据库一致性和完整性,以前的数据库管理系统为上述各类操作提供单独的语言,而SQL将全部任务统一在一种语言中。 (3)是所有关系数据库的公共语言 由于所有主要的关系数据库管理系统都支持SQL语言,用户可将使用SQL的技能从一个RDBMS转到另一个。所有用SQL编写的程序都是可以移植的。SQL是大多数关系型数据库用做查询语言的语言。它是可以移植的,并且容易学习使用,但是所有SQL语句都必须由数据库服务器独立地执行。这就意味着客户端应用必须把每条查询发送到数据库服务器,等待它处理这个查询,接收结果,做一些运算,然后给服务器发送另外一条查询。所有这些东西都会产生进程间通讯,并且如果客户端在另外一台机器上甚至还会导致网络开销5。1.6 IIS简介(1)IIS的安装WINDOWS 2000 SERVER提供的WEB服务器组件IIS的安装方法,在开始设置控制面板添加/删除程序命,在添加/删除程序中选择添加/删除WINDOW组件按钮,就会弹出如图1所示的WINDOWS组件向导对话框.在其中选择INTERNET信息服务IIS,然后单击下一步按钮,随后根据系统提示一步一步的操作即完成IIS的安装。图1 IIS安装图(2)IIS虚拟目录的创建在启动Internet后,在默认WEB站点单击鼠标右键如图2,在快捷菜单中选择“新建”“虚拟目录”命令,输入虚拟目录的名字,然后按照系统提示操作,即可完成虚拟目录的创建。 图2 创建虚拟目录图1.7 运行环境为了保证成绩管理系统运行的效率和可靠性,服务器应具有较高的软硬件配置,客户端的要求不是很高。此应用程序可广泛运行于国际互联网即Internet,也可适用于内部的局域网。其运行要求如下:软件环境:客户端: Windows95/98/2000/XP,Internet Explorer(IE)等。服务器端:Windows NT/Windows2000,Internet Information Server (IIS)4.0及其以上版本,IE等;或者Windows98,Personal Web Server(PWS),IE等。数据库:采用Access,运行于服务器端。硬件环境:服务器 CPU:PIII 500以上 ,内存:512M以上。客户机 CPU:P200MMX以上,内存:32M以上6。2 需求分析 2.1 编写目的在网络技术逐渐渗入社会生活各个层面的今天,以前网站上的论坛管理系统要用户登陆以后才能进行相关访问及互动。而随着网络互联技术的进步,现在网站投票只需打开网页就可进行论坛留言。论坛对象是很多的,各个层次都可进行论坛访问,大至国家领导,小至一个普通干部,访问和留言从到指定用户进行表格到现在通过网络直接点击相应就可进行。网上简易论坛系统可解决游客访问及留言,致使现在几乎各个网站都有各种类型网站论坛系统,用户可发表自己的看法。所以我提出了本课题的研究7。2.2 任务目标2.2.1 基本性能系统包括主要的功能:新用户的注册,会员密码修改,会员登录,管理员删除用户,游客浏览帖子,会员新增帖子,会员编辑帖子,会员帖子回复,管理员编辑、删除帖子等功能,可以应付一般的用户需要。2.2.2 开发目标这个系统预期的目的是为了做成交互式的网页,方便客户端和浏览器端之间的交流。通过论坛,人们能够相互交流沟通,把疑惑、观点在论坛里公布,大家献计献策,共同学习,共同进步。2.2.3 应用目标网上简易论坛系统是一个会员登录发帖系统。网上游客能够浏览论坛上的帖子,并且能够注册成为用户。论坛注册会员能够修改自己的密码,发表帖子,回复帖子,让大家积极参与讨论。论坛管理员能够便于管理论坛,包括浏览游客帖子,审核帖子,对于不健康或是不利于社会稳定的帖子能进行删除操作,会员管理等等。3总体设计3.1系统设计思想3.1.1网上论坛系统说明此网上论坛可以实现:友情链接游客:查看帖子、注册新用户管理员:发布帖子或公告、帖子管理、用户管理注册用户:查看帖子、发新帖子、回复帖子、修改个人登陆密码3.1.2网上论坛系统总体分析通过上面的功能说明,我们可以将论坛的制作分为四大部分:(1)会员注册和登陆模块:这个模块的功能,就是新来网友可以填写注册资料 ,通 过审核后便成为本论坛的正式会员,并可以以会员身份登陆论坛。(2)板块及文章显示模块:显示论坛的各大板块和所有会员最新发表的一些文章主题。(3)发表文章模块:为会员提供发表文章的地方,以及回复主题等。(4)论坛管理模块:管理员可以对用户进行删除、对文章处理,加精华,删除等。了解了具体的功能需求后,就可以按模块的开始论坛的设计了。当然,这些模块的只是在功能上对论坛结构的划分,实际上并不能够完全的把他们独立出来进行设计。3.2数据库设计思想3.2.1数据库的选择 SQL Server 2000 是Microsoft 公司推出的SQL Server 数据库管理系统的最新版本。它继承了SQL Server 7.0版本的优点,同时又比它增加了许多更先进的功能,具有使用方便、可伸缩性好、与相关软件集成程度高等优点。3.2.2数据库设计数据库asptest表1 UserInf数据表编号字段名字段类型字段说明1IDint用户ID号2UserNamevarchar论坛用户的登录名称3Passwordvarchar论坛用户的登录密码表2 Forum数据表编号字段名数据结构说明1IDInt(4)用户ID号2TitleVarchar(50)帖子的标题3ContentVarchar(2000)帖子的内容4CreateTimeDatetime(8)帖子的发布时间5UsernameVarchar(50)发表帖子的用户名6LastAnswerTimeDatetime(8)帖子的回复时间7HitCountInt(4)帖子的点击次数默认值为0。8AnswerIDInt(4)标示该帖子是否是回帖,如果该值为0则不是回帖。默认值为0。9AnswerCountInt(4)帖子的回复次数默认值为0。由于所有的功能模块都要用到数据库,因此我们可以先创建两个程序文件opendb.asp和closedb.asp来专门完成数据库的初始化和关闭操作,而其他的程序文件可以使用和语句来引用这两个文件,以实现连接、打开数据库和断开、关闭数据库的操作8。(1)初始化数据库的程序代码如下:Opendb.asp(2)关闭数据库的程序代码如下:Closedb.asp4详细设计4.1论坛模块功能分析用户管理浏览帖子用户登录用户注册用户密码修改帖子管理删除帖子编辑帖子回复帖子发新帖子数据库图3论坛模块功能分析图如图所示的功能模块划分,文件模式留言板由以下程序文件共同完成,各文件的文件名和功能描述具体如表3所示。功能模块文件名功能描述论坛首页Index.asp对论坛访问者的身份进行标识,并以列表的形式显示帖子的标题信息Detail.asp显示选定帖子的具体内容论坛用户Userlogn.htm实现用户登录Userlogn.aspnewuserlogn.htm实现新用户注册newuserlogn.aspPwdmodify.htm实现用户密码修改Postpassword.aspYhgl.asp实现用户的管理Delete.asp管理已注册的用户发新帖子New.asp实现新帖子的发布Postnew.asp回复帖子Answerart.asp实现帖子的回复Postanswer.asp编辑帖子Editart.asp实现帖子的编辑Postedit.asp删除帖子Deleteart.asp实现帖子的删除数据库Opendb.asp连接、打开数据库创建Recordset对象Closedb.asp断开、关闭数据库表3 论坛各文件的文件名和功能描述表网上论坛的实现流程如图4所示访问论坛打开论坛首页判断访者身份浏览帖子论坛用户登录用户管理员、帖子所有者的登录用户发新帖子回复帖子编辑帖子删除帖子管理员(admin)用户管理图4网上论坛的实现流程图4.2论坛首页图5论坛首页图论坛首页模块由三部分构成如图6所示论坛首页身份标识主题浏览内容浏览图6论坛首页模块图4.2.1身份标示实现流程图访问论坛首页判断访问者身份管理员游客登录用户在首页上提供游客登录和注册的链接在首页上提供用户管理、修改密码、退出论坛的链接在首页上提供修改密码和退出论坛的链接图7身份标示实现流程图4.2.2主题浏览人机界面及其实现流程图主题浏览人机界面如图8所示图8主题浏览人机界面图主题浏览的实现流程如图9所示在首页中读取并显示帖子的标题信息数据库读取图9主题浏览的实现流程图4.2.3内容浏览人机界面及其实现流程图内容浏览人机界面如图10所示图10内容浏览人机界面图浏览帖子与回复内容的实现流程如图11所示在数据表Forum中筛选字段ID的值等于选中帖子ID的记录并显示帖子的详细内容。在数据表Forum中筛选字段AnswerID的值等于帖子ID的所有记录(即回帖)并显示回帖的详细内容。该帖子的点击数加1,并在数据表Forum中进行更新。写入读取读取图11浏览帖子与回复内容的实现流程图4.3论坛用户论坛用户模块由3部分构成如图12所示论坛用户用户登录新用户注册密码修改图12论坛用户模块图4.3.1用户登录人机界面及其实现流程图用户登录人机界面如图13所示 图13用户登录人机界面图用户登录的实现流程如图14所示登录显示用户登录表单键入用户和密码。读取登录表单验证登录用户的合法性合法显示登录成功的对话框。重新进入论坛首页显示登录不成功对话框返回重新登录图14用户登录的实现流程图4.3.2新用户注册人机界面及其实现流程图新用户注册人机界面如图15所示 图15新用户注册人机界面图新用户注册流程如图16所示显示用户注册表单,键入用户和密码判断注册的用户在数据表UserInf是否发生重复新用户注册信息写入数据表UserInf,显示注册成功对话框。重新写入论坛首页注册无重复提交重复图16新用户注册流程图4.3.3修改用户密码人机界面及其实现流程图修改用户密码人机界面如图17所示图17修改用户密码人机界面图用户密码修改流程如图18所示键入新密码和确认密码新密码和确认密码是否一致在数据表UserInf中更新用户密码不一致一致图18用户密码修改流程图4.4发新帖子与回复帖子4.4.1发新帖子人机界面及其实现流程图发新帖子人机界面如图19所示- 图19发新帖子人机界面图发新帖子实现流程如图20所示单击【发表新帖子】按钮判断论坛访问者的身份打开新建帖子表单填写帖子的标题和内容。是否通过客户端数据验证读取表单数据,将发表的帖子信息写入数据表Forum中。首页游客登录用户、管理员通过未通过,返回重新填写图20发新帖子实现流程图4.4.2回复帖子人机界面及其实现流程图回复帖子人机界面如图21所示 图21回复帖子人机界面图回复帖子的实现流程如图22所示单击【回复帖子】按钮判断论坛访问者的身份打开回复帖子的表单,填写回帖的标题和内容。是否通过客户端数据验证读取回复表单数据,将回帖的信息写入数据表Forum中。显示提示信息,返回论坛首页。未通过,返回重新填写游客登录用户、管理员通过,则提交表单图22回复帖子的实现流程图4.5编辑与删除帖子4.5.1编辑帖子人机界面及其实现流程图编辑帖子人机界面如图23所示 图23编辑帖子人机界面图编辑帖子的实现流程如图24所示单击【编辑帖子】按钮判断论坛访问者的身份在数据表Forum中读取想要编辑帖子的内容,并在表单中显示读取帖子的修改信息,并在数据表Forum中进行更新显示提示信息, 返回论坛首页数据库提交修改表单管理员、帖子的作者游客,非帖子的作者图24编辑帖子的实现流程如图4.5.2删除帖子人机界面及其实现流程图删除帖子的人机界面如图25所示 图25删除帖子人机界面图删除帖子的实现流程如图26所示单击【删除帖子】按钮判断论坛访问者的身份在数据表Forum删除指定的帖子和该帖子的所有回复。显示提示信息,返回论坛首页。管理员、帖子的作者游客,非帖子的作者图26删除帖子的实现流程图4.6 论坛管理 论坛管理是为论坛管理员提供的功能模块,主要包括用户管理和帖子管理。在用户管理模块中主要是集中完成论坛用户的删除操作。在帖子管理中主要是完成帖子的编辑与删除操作。5编码实现5.1选择编程语言近年来随着Internet技术的飞速发展及用户需求的不断升级,Web页面技术也不断的推陈出新,使得Web站点的功能越来越强大,能够提供的服务种类越来越繁多。从HTML、Client Script 到CGI,从JAVA的诞生到ActiveX, Web页面设计人员不断受到冲击,微软公司在总结了以往技术,重新思考Web页面设计的真正需要后,推出了Active Server Pages (ASP),一种用以取代CGI(Common Gateway Interface,通用网关接口)的技术。简单讲,ASP是位于服务器端的脚本运行环境,通过这种环境,用户可以创建和运行动态的交互式 Web 服务器应用程序,如交互式的动态网页,包括使用 HTML 表单收集和处理信息,上传与下载等等。更重要的是,ASP使用的ActiveX技术基于开放设计环境,用户可以自己定义和制作组件加入其中,使自己的动态网页几乎具有无限的扩充能力,这是传统的Web编写工具所远远不及的地方。使用ASP还有个好处,就在于ASP可利用ADO(Active Data Object,微软的一种新的数据访问模型)方便快捷地访问数据库,从而使得开发基于WWW的应用系统成为可能,这也是本文选择ASP作为开发工具最重要的原因之一9。Web服务器是Web应用程序的心脏。IIS(Internet Information Server)是微软推出的Windows NT Option Pack的主要成员,作为Win2000server的扩展,自推出以来已经有了很大发展,其体系结构是当今市场上最受关注的Web服务器之一。新推出的IIS4.0版本增强了系统安全性,具有服务器端脚本开发调试,内容管理和站点分析,崩溃防护,内置JAVA虚拟机及全面支持ASP等强大功能。在过去,客户机/服务器结构的设计与Web的相关技术几乎处于平行线上,两者相互独立并无法作出集成性的设计。现在我们利用IIS+ASP构成三层式Web结构(如图2.1所示)的中间一层,将客户机/服务器结构与Web密切结合,完成前后端两者的集成输出功能,使得Web站点的开发更方便实现的功能更强大10。利用IIS+ASP技术来集成Web前后端所带来的强大效益可归结为以下几个方面:1减少构建和维护成本。2加快联机过程。3应用软件集中在服务器端开发管理。4前端可使用任何浏览器(IE、Netscape.)。5后端可存取任何数据库 (SQL、Access.)。6可使用任何脚本语言开发 (VBScript、JavaScript、PERL.)。ASP提供了6个功能强大的内部对象,每个对象具有各自的属性(Property)、方法(Method),有的还拥有数据集合(Collection)与事件(Event),它们共同完成Web中的一些重要工作。对象名称 功能描述Request 从客户端取得信息Response 将信息送给客户端Server 提供一些Web服务器工具Session 储存在一个Session内的用户信息,该信息仅可被该用户访问Application 在一个ASP-Application中让不同的客户端共享信息ObjectContext 配合Microsoft Transaction服务器进行分布式事务处理5.2 论坛注册功能5.2.1代码实现Newuserlogin.htm 用户登录 新用户注册 用户名: 密码: Newuserlogin.asp0 then% msgbox 该用户名已被使用,请重新键入,48,注册失败 window.history.go(-1) msgbox 用户注册成功,欢迎进入论坛,48,注册成功 window.location=index.asp 5.2.2测试先注册一个ID为USER的用户(先前数据库中无此用户名的),注册成功后,再注册一个ID为USER的用户!预期结果应该是系统提示该用户名已经存在。填写完整的资料后点击注册,此时系统按照预期结果提示该用户名已经被注册了。测试结果,系统正常按照设计模式运行。6结束语BBS(Bulletin Board Service,公告牌服务)是Internet上的一种信息服务系统。它提供一块公共电子白板,每个用户都可以在上面书写,可发布信息或提出看法。随着网络技术的飞速发展,论坛已经成为网络上不可缺少的交流方式之一,深受网民的喜爱。整个论坛系统使用Browser/Web模式来设计,服务器端采用SQL Server 2000数据库系统和ASP组件来构成论坛系统;客户端采用浏览器来完成系统维护和管理12。1、 该论坛所实现的功能:用户注册、发帖、浏览帖子、回复、编辑、密码修改、用户管理。2、 论坛待完善问题:缺图片上传、在线聊天、点歌等功能。经过这二个多月的毕业设计和对相关资料的收集,让我清楚的感到随着网络科技的不
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年肿瘤放疗放射治疗剂量的确定与病变定位策略检测答案及解析
- 化工企业安全操作规程与管理
- 2025年心血管病理生理学知识专业认证考试卷答案及解析
- 2025年内分泌科疾病诊断治疗能力综合考核答案及解析
- 2025年骨科手术技术操作模拟考核答案及解析
- 农业合作社购销合同范本
- 2025年老年医学老年疾病护理知识综合测试卷答案及解析
- 2025年医学信息学医学信息资源管理与利用策略分析答案及解析
- 2025年康复心理学康复心理咨询技巧考试答案及解析
- 2025年健康管理与促进实践考核答案及解析
- 医疗质量 岗前培训课件
- (2025秋新版)二年级上册道德与法治全册教案
- 项目可行性研究报告评估咨询管理服务方案投标文件(技术方案)
- 2025年事业单位工勤技能-广东-广东水生产处理工一级(高级技师)历年参考题库典型考点含答案解析
- 公共机构建筑能源审计和能耗基准值技术服务方案投标文件(技术标)
- 2025年全国中小学校党组织书记网络培训示范班在线考试题库及答案
- 【暑假提前学】2025年秋初中语文八年级上册教学课件 第1单元 2《中国人首次进入自己的空间站》
- 重庆重庆中医药学院2025年第二季度考核招聘工作人员笔试历年参考题库附带答案详解
- 四川雅安市人力资源和社会保障局招考聘用编外工作人员【共500题附答案解析】模拟检测试卷
- 3250变压器综合测试仪(共85页)
- 中国联通VI手册完整版
评论
0/150
提交评论