菜单
  

     
    图3系统流程图
    4.数据库设计
    4.1 数据库概念设计
    数据库在一个信息管理系统中占有非常重要的地位,数据设计的优势将直接对应用系统的效率以及实现的效果产生影响。设计数据库系统时应该首先充分了解用户各个方面的需求,包括现有的以及将来可能增加的需求。本系统设计采用了SQL数据库设计。设计了一个数据库ajaxchatdb.mdb,用来存储聊天者发言的信息、用户的信息。创建了三张表:一张用户表User,一张信息表Message,一张聊天表Chat。
    4.2 数据库逻辑结构设计    
    本系统使用SQL Server 2005作为后台数据库,涉及到的数据表有:
    用户表User;
    信息表Message;
    聊天表Chat。
    数据库表之间的关系图如图所示:
     
    图3数据库关系图
    5.系统详细设计和实现
    5.1 用户登录模块的实现
    (1)实现目标
    系统运行后,输入聊天室登陆界面的地址即可显示登陆页面,主要实现功能如下:
    1)用户输入账号密码和验证码即可登陆,账号或密码如果为空会有相应的提示输入账号或密码。
    2)没有账号的用户可以单击链接到注册页面。
    (2)实现过程
    1)向页面中添加txtUser、txtPwd、txtCode、imgCode、imgBtnLogon、ScriptManager1、TextBoxWatermarkExtender1、ValidatorCalloutExtender1等控件,并设置相应的属性。
    2)通过txtUser和txtPwd用户输入账户和密码通过BaseClass类中的SelectSql()方法查询出数据与数据库中的Userinfor表中的相应字段一致才会通过。
    3)验证码是通过CheckCode.aspx页面中写的方法,利用Graphics()生成一个图片,并加上噪音线,并随机生成一个4位数,显示在图片上。只有在用户密码和验证码全部正确的情况下才会登陆成功。
    4)注册页面和忘记密码页面的链接是用HyperLink设置NavigateURL属性为目标页面的地址即可。
    5.2 聊天模块
    5.2.1 聊天模块页面设计
    (1)实现目标
    通过登陆页面之后,后跳入聊天的主页面,主要实现如下功能:
    1)进入页面后聊天框中会显示在线人数和聊天室提示信息。
    2)如果不经过登陆直接进入聊天界面,系统会转到登陆页面。
    3)动态显示在线用户列表。
    4)用户进行群聊、私聊发送之后内容直接显示在聊天框中,页面不进行整体刷新,将聊天内容存入数据库。
    (2)实现过程
    1)向页面中添加ScriptManager、Timer、UpdatePanel、txtMsg、 btnSendMsg等主要控件和Iframe框架,并设置相应属性。
    2)统计在线人数是通过session会话统计的,在chatroom.asx中的session_start中写入:
    Application.Lock();
    Application["count"] = int.Parse(Application["count"].ToString())+ 1;
    Application.UnLock();
    当用户下线时相应的count-1。MsgContent.aspx页面调用Global.asax中的代码,然后将MsgContent.aspx页面嵌到Iframe框架中,一直显示。
    3)用户不通过登陆直接进入聊天室的话,系统会直接转到登陆页面,是通过判断Session会话的UserName是否为空,如果为空就转入登陆页面。
    4)动态刷新在线用户列表是通过listbox控件去数据库查询Userinfo表中state=1的记录的用户,通过AJAX控件UpdatePanel只刷新listbox,Timer控件设置刷新时间,每隔一段时间就去数据库取一次数据,并不会刷新整个页面。
    5)群聊功能是用户将消息填入txtMsg文本框中,也可以选择一些符号,字体颜色,名字颜色,点击发送之后用Application.Set()会把聊天内容保存到Application,显示在Iframe中。发送的内容也会存入数据库的ChatInfo表中。发送按钮和消息文本框是在AJAX控件UpdatePanel之中,不会刷新整个页面直接将消息显示在Iframe中。
  1. 上一篇:ASP+access网上书店设计与实现+需求分析+数据库设计
  2. 下一篇:Asp.net的教师档案信息管理系统设计与实现
  1. 基于VC++的GIS矢量图形系统开发

  2. jsp小企业品质在线评分系统设计与实现

  3. php+mysql在线专家门诊预约系统的设计与实现

  4. jsp+sqlserver鲜花在线销售系统的设计+ER图

  5. 基于.net的在线考试系统网站设计与实现

  6. asp+sqlserver在线考试管理系统的设计与实现

  7. 基于信息技术课程培养初...

  8. java+mysql车辆管理系统的设计+源代码

  9. 酸性水汽提装置总汽提塔设计+CAD图纸

  10. 电站锅炉暖风器设计任务书

  11. 中考体育项目与体育教学合理结合的研究

  12. 十二层带中心支撑钢结构...

  13. 河岸冲刷和泥沙淤积的监测国内外研究现状

  14. 大众媒体对公共政策制定的影响

  15. 当代大学生慈善意识研究+文献综述

  16. 杂拟谷盗体内共生菌沃尔...

  17. 乳业同业并购式全产业链...

  

About

751论文网手机版...

主页:http://www.751com.cn

关闭返回