师生在线交流平台的设计与实现毕业设计.docx
《师生在线交流平台的设计与实现毕业设计.docx》由会员分享,可在线阅读,更多相关《师生在线交流平台的设计与实现毕业设计.docx(34页珍藏版)》请在冰豆网上搜索。
师生在线交流平台的设计与实现毕业设计
摘要
为了方便师生信息的交流,在结合动态服务网页(ASP)和ACCESS2003技术之下开发了这个快截、界面友好的师生交流系统。
论坛使用动态服务网页(ASP)技术建设论坛的骨干框架,使用ACCESS2003制作系统的数据库,实现了一个功能相对齐全的论坛系统,网友可以自由地提出问题以及帮助他人解决问题,或者交流经验。
该论坛功能较齐全,在这里可以自由地发表自己的观点和对论坛的主题发表意见,我们还可以对网友的问题及时地解决,获取对自己有用的知识。
该论坛还有一些特殊的功能,如在线人员显示、强大的搜索功能。
经调试,这个论坛完全可以成为一个很好的师生交流平台,充分利用有限的教育资源,提高资源利用率,同时又能活跃学习氛围,使学习、工作更加方便。
关键词:
动态服务网页,论坛,用户管理
Abstract
Inordertofacilitatetheteachersandstudentsinformationtheexchange,inunifiedASPandACCESS2003undertheservertechnologyhasdevelopedthisquicktruncation,thecontactsurfacefriendlyteachersandstudentsalternating-currentsystem.TheforumusestheASPtechnologyconstructionforumthebackboneframe,usestheACCESS2003manufacturesystemthedatabase,realizedafunctionrelativelycompleteforumsystem,thenetfriendhasbeenpossiblefreelytoproposethequestionaswellashelpedotherpeopletosolvetheproblem,orexchangeexperience.
Thisforumfunctioniscomplete,mayfreelyexpressownviewpointinhereandexpresstheopiniontotheforumsubject,wealsomaypromptlysolvetonetfriend'squestion,gaintotheoneselfusefulknowledge.Thisforumalsohassomespecialfunctions,liketheon-linepersonneldemonstrates,theformidablesearchfunction.
Afterthedebugging,thisforumdefinitelymaybecomeverygoodteachersandstudentstoexchangetheplatform,thefulluselimitededucationresources,raisetheresourcesusefactor,atthesametimecanactivelystudytheatmosphere,causesthestudy,theworktobemoreperfect.
Keywords:
ActiveServerPages,BBS,usermanagement
参考文献..........................................................31
第1章 绪论
1.1选题背景
Internet是目前世界上最大的计算机互联网络,它遍布全球,将世界各地各种规模的网络连接成一个整体。
作为Internet上一种先进的,易于被人们所接受的信息检索手段,WorldWideWeb(简称WWW)发展十分迅速,成为目前世界上最大的信息资源宝库。
据估计,目前Internet上已有上百万个Web站点,其内容范围跨越了教育科研、文化事业、金融、商业、新闻出版、娱乐、体育等各个领域,其用户群十分庞大,因此,建设一个好的Web站点对于一个机构的发展十分重要。
近年来,随着网络用户要求的不断提高及计算机科学的迅速发展,特别是数据库技术在Internet中的广泛应用,Web站点向用户提供的服务将越来越丰富,越来越人性化。
我们发现这样一个事实,一个用户在访问一个网站时一般来讲只对该网站的部分内容感性趣,而且这种兴趣会持续一段时间。
这点启发了我们,如果能根据用户的喜好为不同的用户显示其个性化的页面,即着重显示该用户感兴趣的内容,将为用户节约大量的检索时间,而且这样的网页显然是更具有吸引力的。
一些站点已经在这方面作出了一定的尝试,通常采用的方法是,在用户登陆时为其提供一系列的选项,使用户能够对站点进行一些自主的设置。
这样做能够使站点呈现一定程度的个性化,但是对用户来讲,还是比较烦琐,而且在用户了解一个站点前让其对站点进行设置,其结果未免有些粗糙。
于是我们构想了这样一种方案,对用户登陆后的动作进行跟踪,分析,发掘用户点击的规律,即用户先后点击的关联规则,这样,在用户点击一个主题(链接)之后,系统能够自动生成一页面,其中包含了该主题下用户经常关注的内容(若干链接),这样便在无须用户作出任何额外工作的情况下实现了为用户量身订做的个性化页面。
要实现这样的功能,离不开后台数据库的支持。
用户验证信息,收集到的用户点击信息,主题层次信息,分析得出的关联规则表等大量的数据都由数据库管理系统管理。
本文中数据库服务器端采用了MicrosoftAccess数据库作为ODBC(OpenDataBaseConnectivity)数据源,并以先进的ADO(ActiveXDataObjects)技术进行数据库存取等操作,使Web与数据库紧密联系起来。
整个个性化页面生成系统主要由使用Dreamweaver_MX开发的关联规则采掘系统和利用IIS+ASP技术实现的个性化Web页面生成器两部分组成。
关联规则采掘系统对数据库中的历史记录进行分析,产生用户关联规则表;页面生成器则负责记录用户行为和根据关联规则表动态生成用户个性化Web页面。
二者通过数据库服务器和Web服务器连接。
本文作者主要完成Web服务器端的用户管理、帖子管理、版面管理、数据库管理、浏览和查找、短消息功能等设计、实现与完善以及整个实验网站的组织建立和测试工作。
第2章 系统技术及运行环境
2.1ASP技术简介
MicrosoftActiveServerPages即我们所称的ASP,其实是一套微软开发的服务器端脚本环境。
ActiveServerPage是创建动态网页的一个很好的工具,它起一种编程语言的作用,可以利用它编写动态产生HTML的程序代码。
因此,只要用户浏览Web站点并请求一个ASP页,Web服务器就可以处理相应的ASP代码,生成HTML代码,然后将它传递到用户浏览器并显示出网页。
ASP程序的优点:
1,ASP使用VBScript脚本语言直接源于VB语言,秉承了VB简单易学的特点,掌管起来非常容易。
2,无须编译,容易编写,可在服务器端直接执行。
3,与浏览器无关,客户端只要使用可执行HTML码的浏览器,即可浏览ASP所设计的网页内容。
4,ASP能与任何ActiveXscripting语言相容。
除了可使用VBScript或JavaScript语言来设计外,还通过plug-in的方式,使用由第三方所提供的其他脚本语言。
5,ASP技术的处理速度相当快,并且其安全性也很高,ASP的源程序,不会被传到客户浏览器,因而可以避免所写的源程序被他人剽窃,也提高了程序的安全性。
6,ASP的对象和组件:
ASP有7个固有对象这7个固有对象分别是Request,Response,Server,Application,Session,ASPError和ObjectContext。
2.2ACCESS2003技术简介
Access2003就是关系数据库开发工具,数据库能汇集各种信息以供查询,存储和检索。
那么什么叫数据库呢?
数据库(Database)是由一些有意义和有关系的数据(data)所组合而成。
一个数据库中,包含了许多条记录(Record),而每条记录是由多个字段(Field)所组成,不同的字段存放这不同的数据。
所以数据库的严格定义是一组相关记录的集合,而字段则是最基本的数据项,也是数据库中最小的单位。
在计算机中用来帮我们管理数据库的系统,我们称之为数据库管理管理系统(DatabaseManagementSystemDBMS)。
数据库管理系统是架构在一个或多个数据库之上,并针对数据库中的数据进行管理运用。
Access的优点在于它能使用数据表示图或自定义窗体收集信息,数据表示图提供了一种类似于Excel的电子表格,可以使数据库一目了然。
另外,Access允许创建自定义报表用于打印或输出数据库中的信息。
Access也提供了数据存储库,可以使用桌面数据库文件把数据库文件置于网络文件服务器,与其他网络用户共享数据库。
如上所述,Access作为关系数据库开发具备了许多优点,可以在一个数据包中同时拥有桌面数据库的便利和关系数据库的强大功能。
2.3利用ADO访问数据库
ADO(ActiveXDataObjects)是一种操作Microsoft所支持的数据库的新技术。
在ASP中,ADO可以看作是一个服务器组件(ServerComponent),更简单点说,是一系列的对象,应用这些功能强大的对象,即可轻松完成对数据库复杂的操作。
本文中个性化页面的实现便大量地用到了ADO技术。
具体的操作步骤可以归纳为以下几步:
1.创建数据库源名(DSN)
2.创建数据库链接(Connection)
3.创建数据对象
4.操作数据库
5.关闭数据对象和链接
每一步的作法如下:
一、创建数据源名
DSN(DateSourceName)即数据源名称。
我们知道,ODBC是一种访问数据库的方法,只要系统中有相应的ODBC驱动程序,任何程序就可以通过ODBC操纵驱动程序的数据库。
比如我们系统中有Access的ODBC驱动程序,那么即使我们没有Access软件,也可以在我们的程序中对一个Access的MDB数据库加、删、改记录。
而且我们根本不用知道这个数据库是放在哪里的。
我们只要写出SQL语句,ODBC驱动程序就会帮我们做一切事情。
我们在给ODBC驱动程序传SQL指令时,即是用DSN来告诉它到底操作的是哪一个数据库。
如果数据库的平台变了,比如我们改用了SQLServer的数据库,只要其中表的结构没变,我们就不用改写我们的程序,只要重新在系统中配置DSN就行了。
由此可见,DSN是应用程序和数据库之间的桥梁。
二、创建数据库链接(Connection)
链接用以保持一些关于正在访问的数据的一些状态信息,以及链接者信息。
ASP文件中如果要访问数据,必须首先创建与数据库的链接,其语法如下:
setConn=Server.createObject(“ADOBD.CONNECTION”)
这条语句创建了链接对象Conn,接下来:
connstr="Provider=Microsoft.Jet.OLEDB.4.0;Data.Source="&Server.MapPath(""&db&"")
conn.Openconnstr
这条语句打开链接,用到了DSN,本例为“connstr”。
以上两个步骤缺一不可,因为链接对象的创建与打开是两回事,只有打开了才真正可以使用。
三、创建数据对象(RecordSet)
ADO中的数据对象通常保存的是查询结果。
RecordSet是ADO中最复杂的对象,有许多属性和方法。
RecordSet保存的是一行行的记录,并标有一个当前记录。
以下是创建方法:
SetRecordSet=Conn.Execute(sqtStr)
这条语句创建并打开了对象RecordSet,其中Con是先前创建的链接对象,rs是一个字串,代表一条标准的SQL语句。
例如:
rs=“SELECT*FROMshop_books”
SetRecordSet=mConn.Execute(rs)
这条语句执行后,对象RecordSet中就保存了表tab1中的所有记录。
四、操作数据库
我们通过调用链接对象的Execute方法来将查询结果返回给一个数据对象或进行插入、删除等操作。
例如:
rs=“INSERTINTOtab1VALUES(1,2)”
mConn.Execute(rs)
‘执行插入操作
五、关闭数据对象和链接对象
在使用了ADO对象之后要关闭它,因为它使用了一定的服务器资源。
通过调用方法close实现关闭,然后再释放它。
RecordSet.close
SetRecordSet=Nothing
‘关闭创建的数据对象
mConn.close
SetmConn=Nothing
‘关闭创建的链接对象
2.4SQL语句简介
1,SQL语句简介
SQL全称是"结构化查询语言(StructuredQueryLanguage)",SQL包含4个
部分:
(1)数据查询语言DQL-DataQueryLanguageSELECT
(2)据操纵语言DQL-DataManipulationLanguageINSERT,UPDATE,DELETE
(3)数据定义语言DQL-DataDefinitionLanguageCREATE,ALTER,DROP
(4)数据控制语言DQL-DataControlLanguageCOMMITWORK,ROLLBACKWORK
2,SQL的优点
(1)非过程化语言
(2)统一的语言
SQL为许多任务提供了命令,包括:
查询数据,数据更新,在表中插入记录,在表中修改记录,在表中删除记录,建立,修改和删除数据对象,控制对数据和数据对象的存取,保证数据库一致性和完整性,以前的数据库管理系统为上述各类操作提供单独的语言,而SQL将全部任务统一在一种语言中。
(3)是所有关系数据库的公共语言
由于所有主要的关系数据库管理系统都支持SQL语言,用户可将使用SQL的技能从一个RDBMS转到另一个。
所有用SQL编写的程序都是可以移植的。
SQL是大多数关系型数据库用做查询语言的语言。
它是可以移植的,并且容易学习使用,但是所有SQL语句都必须由数据库服务器独立地执行。
这就意味着客户端应用必须把每条查询发送到数据库服务器,等待它处理这个查询,接收结果,做一些运算,然后给服务器发送另外一条查询。
所有这些东西都会产生进程间通讯,并且如果客户端在另外一台机器上甚至还会导致网络开销。
2.5IIS简介
1,IIS的安装
WINDOWS2000SERVER提供的WEB服务器组件IIS的安装方法,在开始→设置→控制面板→添加/删除程序命,在添加/删除程序中选择→添加/删除WINDOW组件按钮,就会弹出如图2-1所示的WINDOWS组件向导对话框.在其中选择INTERNET信息服务IIS,然后单击下一步按钮,随后根据系统提示一步一步的操作即完成IIS的安装。
图2-1IIS安装
2,IIS虚拟目录的创建
在启动Internet后,在'默认WEB站点'单击鼠标右键如图(1-2),在快捷菜单
中选择"新建"→"虚拟目录"命令,输入虚拟目录的名字,然后按照系统提示操作,
即可完成虚拟目录的创建。
图2-2创建虚拟目录
2.6运行环境
为了保证成绩管理系统运行的效率和可靠性,服务器应具有较高的软硬件配置,客户端的要求不是很高。
此应用程序可广泛运行于国际互联网即Internet,也可适用于内部的局域网。
其运行要求如下:
软件环境:
客户端:
Windows95/98/2000/XP,InternetExplorer(IE)等。
服务器端:
WindowsNT/Windows2000,InternetInformationServer(IIS)4.0及其以上版本,IE等;或者Windows98,PersonalWebServer(PWS),IE等。
数据库:
采用Access,运行于服务器端。
硬件环境:
服务器CPU:
PIII500以上,内存:
512M以上。
客户机CPU:
P200MMX以上,内存:
32M以上。
第3章需求分析
3.1编写目的
在网络技术逐渐渗入社会生活各个层面的今天,以前网站上的论坛管理系统要用户登陆以后才能进行相关访问及互动。
而随着网络互联技术的进步,现在网站投票只需打开网页就可进行论坛留言。
论坛对象是很多的,各个层次都可进行论坛访问,大至国家领导,小至一个普通干部,访问和留言从到指定用户进行表格到现在通过网络直接点击相应就可进行。
网上论坛管理系统可解决游客访问及留言,致使现在几乎各个网站都有各种类型网站论坛管理系统,用户可选择自己的看法。
所以我提出了本课题的研究。
3.2任务目标
3.2.1基本性能
系统包括主要的功能:
新用户的注册,会员密码取回,会员登录,用户自己修改信息,管理员删除用户,游客浏览留言,会员新增留言,会员留言回复,管理员删除留言这些功能,可以应付一般的用户需要。
3.2.2开发目标
这个系统预期的目的是为了做成交互式的网页,方便客户端和浏览器端之间的交流。
通过论坛,人们能够相互交流沟通,把疑惑在论坛里公布,大家献计献策,共同学习,共同进步。
3.2.3应用目标
网上论坛系统是一个会员登录留言系统。
网上游客能够浏览论坛上的帖子,并且能够注册成为用户。
论坛注册会员能够修改自己的资料信息,申请版主,发表帖子,让大家积极参与讨论。
论坛管理员能够便于管理论坛,包括浏览游客留言,审核留言,对于不健康或是不利于社会稳定的留言能进行删除操作,会员管理以及论坛版主管理等等。
第4章 总体设计
4.1系统设计思想
4.1.1网上论坛系统说明
此网上论坛可以实现:
游 客:
查看帖子、注册新用户。
注册用户:
查看帖子、发新帖子、在线发布信息、回复信息、修改个人资料、在线短消息。
管理员:
发布公告、帖子管理、论坛设置、版面管理、用户管理、友情连接、短消息管理、数据库备份。
4.1.2网上论坛系统总体分析
通过上面的功能说明,我们可以将论坛的制作分为四大部分:
(1)会员注册和登陆模块:
这个模块的功能,就是新来网友可以填写注册资料,通过审核后便成为本论坛的正式会员,并可以以会员身份登陆论坛。
(2)版块及文章显示模块:
显示论坛的各大版块和所有会员最新发表的一些文章主题。
(3)发表文章模块:
为会员提供发表文章的地方,以及回复主题等。
(4)论坛管理模块:
版主以上职务可以进行对文章处理,置顶,加精华,删除等,还有就是管理员对论坛进行综合管理。
了解了具体的功能需求后,就可以按模块的开始论坛的设计了。
当然,这些模块的只是在功能上对论坛结构的划分,实际上并不能够完全的把他们独立出来
进行设计。
对于这种较小的应用,也没有必要进行完全的模块化设计,在良好的规划下直接写程序代码或许来的更为简单一些。
4.2数据库设计思想
4.2.1数据库的选择
Access的优点在于它能使用数据表示图或自定义窗体收集信息,数据表示图提供了一种类似于Excel的电子表格,可以使数据库一目了然。
另外,Acces允许创建自定义报表用于打印或输出数据库中的信息。
Access也提供了数据存储库,可以使用桌面数据库文件把数据库文件置于网络文件服务器,与其他网络用户共享数据库。
如上所述,Access作为关系数据库开发具备了许多优
点,可以在一个数据包中同时拥有桌面数据库的便利和关系数据库的强大功能。
4.2.2数据库设计
(1)管理员表
编号
字段名
数据结构
说明
1
name
文本
用户名
2
Pswd
文本
密码
3
bd
数字
权限标示
(2)用户表
编号
字段名
数据结构
说明
1
Userid
数字
用户序号
2
Name
文本
用户名
3
Pswd
文本
密码
4
Userinfo
文本
用户信息
5
Grade
数字
等级
6
Topicnum
数字
总发帖数
7
Lasttime
日期/时间
最后登陆时间
8
Tnum
数字
当天发帖数
9
Wnum
数字
周发帖数
10
Friend
文本
好友
11
favorites
文本
爱好
(3)帖子表
编号
字段名
数据结构
说明
1
Id
数字
帖子ID
2
Bd
数字
所属版块
3
Topic
文本
主题
4
Tinfo
文本
内容
5
Userid
数字
用户ID
6
Posttime
日期/时间
发表时间
7
Type
数字
帖子类型
8
Hits
数字
查看数
9
Retime
日期/时间
最后回复时间
10
Renum
数字
回复数
(4)投票表
编号
字段名
数据结构
说明
1
Id
数字
序号
2
Content
文本
内容
3
Votnum
数字
投票数
4
Type
数字
类型
5
Outtime
日期/时间
投票时间
6
Voteduser
文本
投票者
(5)上传文件表
编号
字段名
数据结构
说明
1
Id
数字
序号
2
Bbsid
数字
BBS序号
3
Filename
文本
文件名称
4
Filetype
数字
类型
5
Uploadtime
日期/时间
上传时间
6
Name
文本
名字
7
url
文本
上传地址
8
Hits
数字
查看数
9
Filesize
数字
文件大小
(6)版块表
编号
字段名
数据结构
说明
1
Id
数字
版块ID
2
Fid
数字
所属ID
3
Bdinfo
文本
版块信息
4
Todaynum
数字
当日发帖数
5
Topicnum
数字
置顶数
6
Allnum
数字
总帖子数
7
Lastinfo
文本
最后发表信息
8
Type
数字
版块类型
9
Admin
文本
版主
(7)短信表
编号
字段名
数据结构
说明
1
Id
数字
编号
2
Fuserid
数字
发信人
3
Tuserid
数字
收信人
4
Content
文本
内容
5
Posttime
日期/时间
发送时间
(8)在线用户表
编号
字段名
数据结构
说明
1
Userid
数字
用户ID