动态交互访问_第1页
动态交互访问_第2页
动态交互访问_第3页
动态交互访问_第4页
动态交互访问_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、基于ASP的WEB动态交互访问摘 要使用ASP提供的Application和Session两个对象,可以实现网站间的动态交互访问,也可以作为聊天室。Application是Web站点所有用户可共享的全局对象,其属性在Global.asa 文件中定义。在此用于存储用户的动态交互信息。Session对象是在页面间跳转时保存和传递数据,其属性在应用程序中定义。用于记忆交互访问的用户信息。关键词ASP Application对象 Session对象 VBScript脚本 JavaScript HTML标签 服务器 浏览器 IIS AccessAbstractTwo objects, applicati

2、on and session, provided from ASP, can be used to construct chat room in your Web . Application is a global object shared by all clients on web, and its at tribute is defined in Global.asa file, here is used to save the chat ted contents of user . Session object is used to save and transmit data w h

3、en web jumps, but its active range is only for one client, and its at tribute is defined in application program. Here, Session object is used to remember name of user .Key wordsASP Application object Session object VBScript JavaScript HTML tag server browser IIS A1. 前言随着网络技术的发展,web技术有了广阔的发展空间,其中动态访问

4、技术更是用户的需求,为此本文用ASP来实现动态访问的开发,所做的主要工作如下:(1)介绍了动态访问页面功能及Windows XP Professional+ IIS+ Microsoft Office Access 2003系统的ASP服务器搭建。(2)阐述整个动态访问系统的结构及工作原理;分析了系统实现中的特殊性、难点和重点。(3)分析并解决动态访问实现中的若干技术问题。 (4)完成动态访问系统的全部设计,并进行测试及分析结果。 1.1本课题研究的意义 随着新的技术的发展,通过这些新技术的应用,动态访问的开发,给人们带来新的交流方式,也扩展了人们更大的交流空间。在动态访问的平台上,不仅可以跨

5、地域、跨国家进行交流,还可以在一个狭小的地理范围(如:一个公司内部)进行交流,使人们的交流畅通无阻,能得到很多问题的迅速解答,不仅提高了工作效率,还使工作更有情趣,让人们的工作和新的信息的获得轻松自如。所以,研究动态访问的开发,具有非常重大的意义。 1.2本课题的研究目标针对动态访问的众多好处,根据使用动态访问的用户的众多需求,分析并开发出一套可行的动态访问系统,去研究、发现动态访问涉及的关键技术和实现的关键问题,进一步提高动态访问的技术性能。 1.3要解决的关键问题动态访问最关键的是交互信息的实时更新,用户的注册及登录,在线用户的列表,数据库的链接及访问,ASP实现的WEB动态交互访问等。如

6、果不能很好的解决这些问题,动态访问的质量就会大打折扣,甚至会使动态访问无法进行。2.需求分析 2.1功能需求为用户提供动态交换信息场所,用户可以根据个人习惯选择字体、文字颜色和表情等;可以手动清除动态交换信息的内容。客户端处理模块:获取界面元素、得到动态交换信息内容、与服务器交互、更新客户端页面、响应用户事件。服务器端响应模块:提供动态访问界面元素信息、获得提交数据、数据合法性验证、动态交换信息内容入库。动态访问系统通过界面及用户管理、客户端JavaScript处理和服务器端响应 ,三个主要功能模块实现了动态访问中游客登录、注册用户登录、注销、发送消息、读取消息和查看在线用户列表等功能。能够注

7、册用户,管理用户信息,动态交换信息者把语句写入文本,输出到屏幕上, 浏览器不断的对屏幕输出进行刷新、读取,实时更新在线的客户。 2.2性能需求在动态访问者没有满员的情况下,普通用户能够登录的动态访问进行文本的动态交换信息,能够方便的实现公共交谈、选择颜色、添加表情等,新用户注册时能够保证用户昵称的唯一性。网络管理员能够方便的浏览所有用户的信息等等。考虑到需要验证的内容,在程序中使用Application(“usercount”)来标记当前的用户数。在登录时用Session"upower"来判断用户的权限,如果是普通用户或游客通过验证后会进入动态访问主页,如果是管理员则会进入

8、管理员管理管理页面。3.总体考虑 根据设计需求,交互访问的应用程序工作流程如下:图一 (程序工作流程图) 3.1系统模块的设计动态访问的各功能模块 index.htm:登录界面 reg.asp、reg.htm:用户注册 login.asp:用户登录界面 Global.asa: 应用程序文件 chatroom.asp:进入动态访问主界面、进行动态交换信息 iamcoming.asp:用户上线提示 conn.asp:数据库连接文件 homechatroom.mdb:动态访问数据库文件 showOnline.asp:显示当前在线用户 about.html:动态访问说明文件 process.asp:动

9、态访问信息界面注册模块:初次来动态访问的用户,进行注册,保留自己信息,便于以后继续使用本动态访问时,能够迅速登录。登录模块:游客或已经注册的用户进行登录,进入系统开始动态交换信息交流。动态交换信息模块:游客或注册用户登录到动态访问系统以后,就可以和所有的在线用户,进行动态交换信息交流,除了使用各种颜色字体的文字动态交换信息,还可以使用已提供的图片。退出模块:退出动态交换信息系统,与数据库断开连接,并从在线人数减除。 3.2数据库结构设计Microsoft Office Access 2003提供了非常方便的创建新数据库的方法。管理数据库和建立数据库对象采用Access。在数据库中用User表,

10、这个表包括了所有注册用户的信息,如:用户名、密码、昵称、性别等等。下面为数据库表Users(表1)表1 (Users表结构)字段名称数据类型字段大小说明Username文本50用户者名称Userpassword文本50用户者密码Nickname文本50用户者昵称Sex文本10用户者性别4.系统的实现 4.1 INDEX.HTM 、LOGIN.ASP、INDEX.JSIndex.htm是进入动态访问的主接口,在界面上有进入动态访问、注册等选择按钮,当用户做出选择时,此页面自动加载login.asp或reg.htm、reg.asp,完成操作。Index.js功能是协同login.asp,在用户登录

11、时,将用户输入的信息与数据库中信息进行匹对的。Index.js关键代码如下:if(flag!=null) setMsg("请输入用户名和密码(只能是字母,数字和下划线"_"的组合)");else setMsg("<font color="#009900">正在登陆,请等待.</font>");var values = "act=login&username=" + username + "&password=" + password;h

12、omeSendPost("login.asp", values, processLoginRequest);function processLoginRequest() if(homeHttpRequest.readyState=4) if(homeHttpRequest.status=200) if(homeHttpRequest.responseText="True") window.location = "chatroom.asp"else setMsg("用户名或密码错误,请重试。");4.2 REG.HT

13、M、 REG.ASP、REG.JS此三个文件是用户注册时使用的,关键代码如下:dim sqlStr, rssqlStr = "select * from acrUsers where acrUsername='" & username & "' or acrNickname='" & nickName & "'"set rs = server.CreateObject("ADODB.RecordSet")rs.open sqlStr,conn,1,3i

14、f rs.eof thenrs.addnewrs(0) = usernamers(1) = passwordnickName = replace(nickName,"&","&amp;")nickName = replace(nickName,"<","&lt;")nickName = replace(nickName,">","&gt;")nickName = replace(nickName,chr(34),"&

15、;quot;")nickName = replace(nickName," "," &nbsp;")rs(2) = nickNamers(3) = sexrs.updateresult = "注册成功,请登录。"elseif rs(0)=username thenresult = "对不起,用户名已存在。"end ifif rs(2)=nickName thenresult = result & "昵称已存在。"end if4.3 CONN.ASP我们要访问数据库,首先

16、要必须知道这个数据库在哪里,这个数据库的驱动程序是什么,在这里使用 ASP 来指定数据库路径及数据库驱动程序。不必手动去创建数据库源。server.mappath("db.mdb")指定数据库路径,DRIVER=Microsoft Access Driver (*.mdb);指定数据库驱动程序,这里使用ACCESS建立homechatroom.mdb数据库,其代码如下:<%dim conn, DBpathDBpath = "homechatroom.mdb"set conn = Server.CreateObject("ADODB.Con

17、nection")conn.Connectionstring = "Provider = Microsoft.Jet.OLEDB.4.0;Data Source="&Server.MapPath(DBpath)conn.open%>4.4 GLOBAL.ASA Global.asa文件其实是一个可选文件,程序编写者可以在该文件中指定事件脚本,并声明具有会话和应用程序作用域的对象。该文件的内容不是用来给用户显示的,而是用来存储事件信息和由应用程序全局使用的对象。该文件的名称必须是Global.asa且必须存放在应用程序的根目录中。每个应用程序只能有一个

18、 Global.asa 文件。4.5 CHATROOM.ASP、CHATROOM.JS动态交换信息的主界面,如何将用户的动态交换信息信息显示在客户的浏览器中,可以用ASP的Application对象。应用Request.Form方法获取从输入动态交换信息内容页面传递的动态交换信息信息,首先利用Server.HTMLEncode方法对获取到的发言内容进行处理,再对其进行指定的格式设置,最后将其以字符串的形式保存到Application(“Message”)中。function send() var msg=escape(document.getElementById("msg"

19、;).value); /escape解决home中文筹码问题if(msg="") setSuggest("请输入内容");else var color = document.getElementById("selectColor").value;var values = "msg=" + msg + "&color=" + color;homeSendPost("process.asp", values, processSendRequest);document.ge

20、tElementById("msg").value = ""document.getElementById("msg").focus();function processSendRequest() if(homeHttpRequest.readyState=4) if(homeHttpRequest.status=200) if(homeHttpRequest.responseText!="") var chatContent = document.getElementById("chat_content

21、");var msgDiv = document.createElement("div");msgDiv.innerHTML = homeHttpRequest.responseText;chatContent.appendChild(msgDiv);sound = true;else setSuggest("您请求的页面有异常");/alert("您请求的页面有异常");function getAllMsg() setSuggest("&nbsp;");homeSendPost("pr

22、ocess.asp","",processSendRequest);if(sound) setSuggest("<embed type="application/x-mplayer2" src="sound/message.wav" autostart="true" loop="false" height=0 width=0 />&nbsp;");sound=false;4.6 ABOUT.HTML动态访问的说明文档和版权信息。5.网站测试与性能分析本动态访问经测试,完全可以正确实现动态交互访问的功能,具体测试,如下图所示(以交

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论