ImageVerifierCode 换一换
格式:DOCX , 页数:24 ,大小:243.50KB ,
资源ID:8407344      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/8407344.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(网上聊天系统设计及实现论文毕业设计.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

网上聊天系统设计及实现论文毕业设计.docx

1、网上聊天系统设计及实现论文毕业设计中国石油大学(华东)现代远程教育毕业设计(论文)题 目: 基于ASP的网上聊天系统的设计与实现 学习中心: 山东济南函授站 年级专业: 网络11秋专升本 学生姓名: 谯立柱 学 号:11616145008 指导教师: 徐功文老师 职 称: 教授 导师单位: 中国石油大学(华东) 中国石油大学(华东)远程与继续教育学院论文完成时间: 2013 年 5 月 20 中国石油大学(华东)现代远程教育毕业设计(论文)任务书发给学员 1设计(论文)题目: 2学生完成设计(论文)期限: 年 月 日至 年 月 日 3设计(论文)课题要求: 4实验(上机、调研)部分要求内容:

2、5文献查阅要求: 6发 出 日 期: 年 月 日 7学员完成日期: 年 月 日指导教师签名: 学 生 签 名: 摘 要随着网络的逐渐普及,以及网络技术的不段发展,人们通过网络进行交流的方式变得多样化。网络聊天室便是其中之一。聊天室系统的即时交流方式满足了网络中多人同时聊天交流的需要,使得较多的人在同一个聊天页面进行交流变得方便,简单。本设计所完成的网络聊天室具有常用聊天室的所有功能,包括多人同时在线聊天、两人间的私密聊天、在发言的时候能够发送表情及图片,还能显示在线用户列表,同时,为了管理聊天室中的用户,设计了用户注册登陆功能,用户管理功能以及用户留言功能。并且,加入了分屏、清屏、屏蔽的辅助功

3、能,增加了聊天室的操作性。本文首先介绍了聊天室系统所使用到的一些关键技术,接着介绍了该系统的设计思路和需求分析,然后是对系统的详细介绍,包括系统中创建的数据库以及系统的具体功能介绍。关键词:聊天室;B/S模式;私聊;留言第1章 引 言 11.1 项目开发背景 11.2 项目开发的目的 11.3 项目提出的意义 11.4 系统的开发方法 2第2章 系统主要技术分析及聊天系统分析 32.1 ASP技术 32.2 数据库技术 32.3 加密技术 42.4 需求分析 42.5 系统总体结构 52.6 模块功能分析 52.7 系统总体规划 7第3章 系统数据库设计3.1 数据库概念模型 73.2 数据库

4、各表设计 73.3 数据库链接的实现 83.4 数据库的设计 93.5 实现数据库之间的联系 93.6 数据库的连接方法 9第4章 系统功能具体实现 104.1 用户注册登陆模块 10 4.1.1 用户注册 10 4.1.2 用户登陆 11 4.1.3 用户密码修改 124.2 用户发言 134.3 聊天内容显示 154.4 在线用户列表显示 184.5 管理功能 194.6 辅助功能区 20结束语 23致 谢 24主要参考文献 25第1章 引 言1.1项目开发背景随着网络的逐渐普及,以及网络技术的不段发展,人们通过网络进行交流的方式变得多样化。网络聊天室便是其中之一。在网站建设迅速发展的今天

5、,基于B/S模式的ASP网络聊天室已经成为较多网民认可的一种聊天交流平台,各种专家座谈、在线答疑室,实质就是聊天室。聊天室系统的即时交流方式满足了网络中多人同时聊天交流的需要,使得较多的人在同一个聊天页面进行交流变得方便,简单。1.2项目开发的目的 本聊天室的开发目的就是为人们在网络中提供一个即时的网页交流平台,通过这个平台,人们可以随意发言和观看大家发言的内容。其中的一大特点就是聊天室中的用户可以选择发言的对象,进行一对一的私聊,别人是无法看到两人间对话的内容的。1.3项目服务器结构及数据库类型本系统开发采用B/S(浏览器/服务器)结构,参考网络中正在使用的大型聊天室的架构、分析聊天室可实现

6、功能,结合本次设计的相关要求,进行开发设计并写出需求分析说明书。具体开发环境:使用windows2003作为服务器运行平台,同时搭建系统运行平台IIS、DNS域名服务器;以ASP语言作为开发语言,主要研究HTML、JAVA SCRIPT、VB SCRIPT以及SQL数据库语言;后台数据库使用SQL SERVER或系统自带的ACCESS数据库;开发工具包括DREAMAVER、PHOTOSHOP、IE、SQL SERVER等。1.4项目提出的意义 Internet是目前世界上最大的计算机互联网络,它遍布全球,将世界各地各种规模的网络连接成一个整体。作为Internet上一种先进的,易于被人们所接受

7、的信息检索手段,World Wide Web(简称WWW)发展十分迅速,成为目前世界上最大的信息资源宝库。据估计,目前Internet上已有上百万个Web站点,其内容范围跨越了教育科研、文化事业、金融、商业、新闻出版、娱乐、体育等各个领域,其用户群十分庞大,因此,建设一个好的Web站点对于一个机构的发展十分重要。近年来计算机技术的快速发展,特别是计算机网络的发展,越来越深刻的改变了人们生活的方方面面。使得人们能以更低廉的价格,开发出更方便、更实用的网络工具。各种在线服务系统,更是深刻的影响了人们的联系和交流方式,使得人们可以在远隔千里之遥随时通讯。过去的种种陈旧的联系方式,已经不能满足现代生活

8、的需要。网上聊天系统作为一种方便消费者与人们之间联系的实用系统便应运而生。网上聊天系统是为人们进行交流和联系提供的一个平台。通过提供完善的网上聊天系统的管理,可以达到增进人们与消费者之间、消费者与消费者之间的交流和联系的目的。第2章 系统主要技术分析及聊天系统分析2.1 ASP技术ASP技术是一种类似HTML(Hypertext Markup Language超文本标识语言)、Script与CGI(Common Gateway Interface通用网关接口)的结合体,简单的讲它是一种运行于服务器的脚本语言,但是其运行效率比CGI更高、程序编制也比HTML更方便且更有灵活性,程序安全性及保密性

9、也远比Script好。其特点归纳如下: 1.ASP可以和HTML或其他脚本语言(VB Script与Java Script)互相嵌套。2.ASP是一种在Web服务器端运行的脚本语言,因此,程序代码完全保密。3.ASP以对象为基础,因此可以使用ActiveX控件继续扩充其功能。4.ASP内置ADO组件,因此可以轻松地存取各种数据库,大大缩短了程序开发时间。5.ASP可以将运行结果以HTML的格式传送至客户端浏览器,因此ASP可以适用于各种浏览器。下面来介绍一下ASP的几个内置对象:Request对象,我们知道HTTP通讯协议是一种请求与响应(Request/Response)的通讯协议,因此通常

10、由客户端向Web服务器提出请求,Web服务器才会响应信息。因此在ASP中,特别将“客户端提出的要求”与“Web服务器响应的信息”等动作封装成Request对象与Response对象。换而言之,Request对象通常包含了用户端的相关信息,如浏览器的种类、表头信息、表单参数及cookies等等。Response对象,每一种程序语言或开发工具一定都有与用户沟通的界面或函数,ASP也不例外。在ASP中负责将信息传达到用户的对象就是Response对象。Server对象,Server对象允许用户取得服务器提供的各项功能,例如,Server对象的CreateObject方法允许客户端用户建立一个Acti

11、veX Server组件实例,其所建立组件实例会随着服务器端完成ASP网页的处理而自动被释放。如果希望此对象实例可以跨多个ASP网页,就要用到Session对象保留该组件实例,直到Session对象的运行时间到了,或是在其他ASP网页调用Session对象的Abandon方法,此组件实例才会被释放。Session对象,Session对象在ASP程序编写中占了相当重的份量,由于网页是一种无状态的程序,因此几乎无法知道用户的浏览状态。必须通过Session对象记录用户的相关信息,以供用户再次对此Web服务器提出要求时作确认,例如,在某些特定的网页中,常需要用户输入确认的账号和密码,假如这些身份确认

12、的结果无法保留,那岂不是每一个网页都需要重新输入一次密码。换而言之,每一个Session的用户,Web服务器均会自动的为它们建立一个Session。必须说明,Session对象只能适用于具备Cookie功能的浏览器。2.2 数据库技术在基于微软IIS/PWS的网络平台上,通过服务器端运行的ASP程序来访问后台数据库,是一种最常见的模式了。而对于小型的数据库应用需求,微软的Access数据库应该是与ASP程序配套使用的首选。由于Access数据库的ODBC驱动程序支持的SQL指令全,执行效率高,所以Access后台数据库+ASP服务器端程序+客户端IE浏览器,是一个精练实用高效的组合模式。利用S

13、QL语言,可以查询和管理自已的数据库。它由大约30条命令构成,但实际只需要少数的几个命令就可以完成相当多的工作,常用的SQL查询命令有:Select、Insert、Delete、Update等。2.3 加密技术本设计在用户密码和密码问题答案的存储时使用了MD5加密算法来保护数据库中的重要数据。MD5,即“Message-Digest Algorithm 5(信息-摘要算法)”,以512位分组来处理输入的信息,且每一分组又被划分为16个32位子分组,经过一系列的处理后,算法的输出由四个32位分组组成,将这四个32位分组级联后将生成一个128位的散列值。本设计在保存会员密码和密码提示问题答案时都先

14、将传递的数据通过MD5加密后才存入数据库,故在数据库中只能看到已经加密的信息,保证了信息的安全。又因为该算法是单向加密的,没有解密算法,然而MD5算法对同一段明文加密得出的密文是唯一且相同的,相当于这段数据的数据指纹,所以当有数据要和保存的数据进行比较时,便可通过将需要对比的数据进行MD5加密后再对比。2.4 需求分析本系统采用B/S模式设计,开发目的主要是在网络中提供一个安全的供多人休闲聊天交流的平台,同时借助开发此系统提高自己的独自设计能力。系统运行环境:本系统是在windows 2003 server操作系统下,搭建IIS系统运行平台,使用DREAMWEAVER和Frontpage作为开

15、发工具开发的,数据库使用ACCESS 2003。运行本系统,需要满足如下要求:(1)服务器端配置:Windows 2000 ServicePack 4.0 以上操作系统,Internet 信息服务器 5.0(IIS 5.0)Microsoft Offices ACCESS 2000 以上版本(2)客户端要求配置Windows 2000 ServicePack 4.0 以上操作系统,IE浏览器5.0及以上版本2.5系统总体结构根据聊天室的主要功能分析,本系统一共分为七大功能模块:用户注册登陆模块、发言功能模块、聊天内容显示功能模块、显示用户列表模块、辅助功能区模块、管理功能模块以及用户密码修改功

16、能模块。其中辅助功能区包括用户举报模块以及分屏等操作功能,功能结构图如图2-1所示。图2-1 功能结构图2.6模块功能分析(1)用户注册登陆模块完成新用户注册,将注册信息添加到数据库中,用于用户登陆验证;经过登陆验证的用户,方可进入聊天室进行聊天交流。(2)用户密码修改模块当用户不小心忘记或记错了自己的注册密码时,可通过修改密码,重新设定登陆密码,其中要经过密码提示问题的验证,顺利通过才能修改密码。(3)用户发言模块除了提供发言内容的输入外,还应能显示当前用户正在对谁发言、可选择发言的颜色和发言的表情。发言的颜色和发言表情通过下拉式组合框实现。发言内容书写完毕后,通过单击“提交”按钮或按回车,

17、实现聊天内容的显示。(4)聊天内容显示模块主要完成将每个用户的发言的内容显示在页面中,让这些内容对每个登陆用户均可见(除开私聊内容),同时还能及时显示各用户的发言内容,以便始终能显示出最新的发言内容。(5)在线用户列表显示模块该页面实现在线人数和在线用户的统计,并将在线用户依次显示出来。每个显示用户应设置为一个超链接,当单击用户名时,实现将发言区中的发言对象设置为该用户。(6)辅助功能区模块提供诸如分屏、清屏、刷新、屏蔽、显示名单的操作功能。同时为用户提供了举报的流言功能。(7)管理模块系统管理员可以查看用户注册信息以及用户留言,并对其进行管理。2.7系统总体规划聊天室系统的总体流程由用户登陆

18、开始,通过验证后,用户便可进入聊天页面进行交流聊天,同时,系统会将新登陆用户的用户名添加进在线用户列表,即时更新。总体流程图如图2-2所示。图2-2 系统总体流程图第3章 系统数据库设计3.1 数据库概念模型根据系统功能和和流程所需数据要求,可以确定数据库中数据项和数据结构,其E-R图如图3-1所示。图3-1 数据库E-R图E-R(Eneity-Relationship Approach)图是最常用的概念模型表示方法,也是数据库的核心和基础,它是按用户的观点来对数据和信息建模的。3.2 数据库各表设计对于聊天室系统,所需的数据库表有baseuser和投诉两张表。Baseuser表用于存放注册用

19、户的基本信息,其具体字段设计如表3-2所示。表3-2baseuser表字段字段名数据类型长度是否允许为空说明Name文本16否用户注册名Password密码50否用户登陆密码MD5值问题文本50否密码提示问题答案密码50否密码提示问题答案MD5值Email文本50否用户邮箱性别文本2否用户性别Leves文本10否用户权限Date时间10否注册时间投诉表用于存放用户在聊天过程中向管理员反应的举报信息,具体字段设计如表3-3所示。表3-3 投诉表字段字段名数据类型长度是否允许为空说明ID自动编号Username文本16否投诉人用户名Username1文本16否被投诉人用户名Qusetion文本50

20、否投诉描述Date时间10否投诉时间3.3 数据库链接的实现数据库连接操作是一个相当频繁的操作,在ASP的数据库编程中,connection对象是我们不可能离开的一个对象,该对象是ADO对象模块中的一个专门打开和关闭数据库连接的对象,在对数据库进行任何的操作,比如更新记录,插入,删除,检索等,都必须以connection对象的建立为前提。形象地来说,connection对象就是程序与数据库沟通的管道,所有对数据库的操作,都必须经过它,因此,本系统首先建立一个connection对象的实例变量,然后才能在它的基础上建立Recordset对象实例来操作数据库。这里首先利用connection对象的

21、属性ConnStr 设置数据库的连接方式,使用的是Access OLE DB驱动程序。使用server.createobject方法建立connection对象的实例变量conn,使用connection对象的Open方法打开数据库连接,核心代码如下:connstr=DBQ=+server.mappath(userdata.mdb)+;DefaultDir=;DRIVER=Microsoft Access Driver (*.mdb);set conn=server.createobject(ADODB.CONNECTION)conn.open connstr其中,还使用了server对象的S

22、erver.MapPath(Path)方法,作用是将(path)指定的虚拟路径转换为实际路径,大大提高了本系统的移植性。3.4 数据库的设计 用户的管理:包括合法系统用户的注册,登录,退出等功能。. 设计要求是: 1 activetable表 记录当前在线的用户。 2 message 表 记录当前用户所留的信息。 3 user 表 当前所有注册用户的信息。3.5 实现数据库之间的联系 数据库之间的关系指明两个库之间共享一个共同的关键字值。一个连接是指一种虚拟的表,这种表是在当用户要求从相互关联的各个不同的表中获取信息时建立的,关键字段用于在相互连接的不同表中查找匹配的记录。一个更高级的连接形式

23、称为自连接。这种连接是指一个表被连接到它自己的一个字段,或在不同的纪录中由重复数据的组合字段。数据库中有三种不同类型的关键字:主关键字、组合关键字和外关键字。在表中使用的关键字类型用于描述库表示什么以及在数据库中如何与其它的库建立关系。3.6 数据库的连接方法 1.Access数据库的DSN-less连接方法: set adocon=Server.Createobject(adodb.connection) adoconn.OpenDriver=Microsoft Access Driver(*.mdb);DBQ=& _Server.MapPath(数据库所在路径) 2.Access OLE

24、DB连接方法: set adocon=Server.Createobject(adodb.connection) adocon.openProvider=Microsoft.Jet.OLEDB.4.0;& _Data Source= & Server.MapPath(数据库所在路径)第4章 系统功能具体实现聊天室的功能主要是实现用户的发言和观看大家发言的内容,发言界面和聊天内容需要显示在同一屏界面中,以方便发言和观看,另外,通常还需要显示当前在线的人数和用户列表,以方便选择对谁发言。用户书写发言的界面、聊天内容的显示、用户列表的显示均需要通过单独的页面来实现,为了能在同一屏界面中同时显示多个页

25、面的内容,此时需要利用带框架集的页面来实现。框架集是多个框架的集合,每一个框架可显示一个页面的内容,在同一屏中需要显示多少个页面,就需要创建一个具有多少个框架的框架集来实现,整个框架集最后存盘形成一个页面,以后浏览该页面时,各框架集中的内容就会自动显示出来。4.1用户注册登陆模块 4.1.1用户注册在聊天室首页,单击“用户注册”,便可进入用户注册页面,如图4-1所示图4-1 用户注册页面用户进入注册页面后,根据要求,填写表单中各项数据,单击确定后,系统通过表单传递的“POST”方法,将输入的内容传递给后台处理页面usersave.asp进行写入数据库处理。其中,在进行表单传递的时候,系统还调用

26、了check()函数对填入表单的数据进行检验,一旦发现表单中有一个数据项不符合要求,系统便会弹出出错信息,提示用户重新填写。在后台处理页面中,系统先定义对应于表单各数据项的变量,利用ASP内置的Request对象,将用户填入表单的数据赋给这些变量,在存入数据库的时候直接将变量值添入数据库即可。对从表单得到的“密码”、“密码提示答案”的关键数据,在存入数据库的时候,系统还调用了MD5()函数(MD5加密程序),对数据进行加密处理,这样,存入数据库中的“密码”、“密码提示答案”字段的值将以密文形式存放,提高了用户信息的安全性。当表单数据通过审核并对需要加密的数据进行加密后,后台处理页面便创建一个R

27、ecordset对象实例来访问数据库的用户信息表,实现代码为set rs=server.createobject(adodb.recordset)使用Recordset对象的BOF和EOF属性来查看此用户名是否已被注册,如果用户名已被注册,则以Response对象的Redirect方法提示用户重新注册,保证了用户名的唯一性。若条件为假,则将表单数据同加密数据写入用户注册表中,完成注册,实现代码为sql=select * from user where 用户名=&name&rs.Open sql,conn,1,3if not rs.eof or not rs.bof then response.

28、write 该用户名已被注册,请重新注册其他用户名!else rs.addnew页面提示注册成功后,用户便可从聊天室首页进行登陆,进入聊天室。 网上聊天系统是为人们之间进行交流和联系提供的一个平台。通过提供完善的网上聊天系统服务,可以达到增进彼此之间的了解,增进人与人之间的感情交流。4.1.2用户登录用户在聊天室登录界面填入正确的注册信息,单击登录,系统将自动把用户填入的“帐号”、“密码”于数据库中存放的用户注册信息进行比对验证。系统进行用户身份验证时,首先利用Request对象,将用户填入的“帐号”(即用户名)、“密码”传递给预先定义的变量,再使用Select语句,将变量值与用户信息表进行比

29、对sql=select * from user where password=&password& and name=&username&其中,由于系统在添加用户信息进入数据库表的时候,对“密码“字段进行了MD5加密处理,存放在数据库中的密码是经过加密后的MD5值,因此,在验证用户密码是否符合时,系统把用户输入的密码计算成MD5值,再与存放在系统中的密码MD5值进行比较,在整个过程中,系统都不知道用户的密码具体时多少。这里,同样使用了recordset对象的BOF和EOF属性来查看是否有该用户的注册信息,判断语句与注册中的判断语句相同,不同的是判断结果若为真,说明该用户为聊天室注册的合法用户,

30、这时,以Response对象的Redirect方法跳转到聊天主页面,Response对象的Redirect方法是实现页面的跳转,使当前页面跳转到指定的页面。在用户登录进聊天主页面的同时,系统将通过验证的用户名以及用户信息表中对应用户名的“leves”值传递给特别定义的session对象session(“user”)以及session(“leves”)。session(user)=usernamesession(leves)=rs(leves)Session对象的用途是记录浏览器端专用的变量,将用户名和该用户对应的权限存放在session对象中,便可在后面的聊天页面和在线用户列表页面直接读取浏览器端的变量值,显示出用户名和用户权限所具有的功能,本系统中,主要是管理员的管理功能。经过上述的用户验证和数据传递,系统跳转到聊天页面,此时用户便可在聊天主页面进行聊天交流了。 4.1.3 用户密码修改当聊天室注册用户不小心忘记了注册密码或者把密码记错,用户将无法再次进入聊天室,也就无法与聊得来的朋友继续聊天。针对这种情况,系统设置了用户密码修改功能,以便系统中合法的注册用户在忘记密码后,能重新设置新密码来登录系统,以避免用户无法登录。在聊天室首页,单击“忘记密码”,进入用户密码修改页面,如图4-2所示图4-2 密码修改页面

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1