用IE和SQL2k开发一个XML聊天程序

xml|程序

不同浏览器之间多年的竞争导致产生了很多工具帮助开发人员完成以前很难做到的任务。现在,只要一小段脚本,你就可以创建一个应用程序将数据绑定到用户控件,这样就可以通过一个内嵌的代理类型的控件与通信。
  在InternetExplorer(IE)中,这些东西包括XML数据岛和XMLHTTP对象,XML数据岛用于将数据绑定到表单元素,XMLHTTP对象用于在当前页面内不导航到其它页面的情况下创建对的同步和异步调用。我将使用这两个易用的特性创建一个简单的聊天应用程序,该应用程序由一些充当UI的ASP页面,实现客户端功能的javascript,和2000中完成商业逻辑的T-SQL所组成。

  客户和使用XML通信。在Web接收到一个消息块之后,消息块会追加到中的一个带有时间戳的MESSAGES表中。基于预先定义好的时间间隔,客户会从请求更新信息,包括自上一次从请求信息到现在为止追加到中的消息列表和联机用户列表。

  客户将通过XMLHTTP对象发送一个到。动作(action)要么是请求刷新消息和用户列表,要么是发送一个新消息。这些动作保存在一个叫做ACTIONS的表中。将响应相应的请求或者接受一个新消息然后追加到MESSAGES表中。

  当响应一个消息的请求的时候,会返回上次请求之后的所有新消息的一个列表。为了跟踪客户的活动,我使用一个ACTIVITY表包含客户活动的日期时间(datetime),客户的标识保存在表HANDLES中,该表的名字很直观。

  下面是建表的脚本:

  

  所有的数据操作将通过存储过程完成。所有的数据接口将通过一个充当Web和2000的联络员的泛型COM完成。COM对象暴露一个我要使用的方法RunSPReturnStream。该方法的第一个参数为存储过程的名字,第二个参数是参数数组的数组。参数数组是一个如下格式的简单数组:(paraName,paramType,paramLength,paramValue)。paramType是ADOParameterType枚举之一。一个ASP页面负责接受动作和创建响应,我把它叫做HandleAction.asp。

  聊天页面将包含一个区域显示聊天消息;这个区域是一个包含在DIV的TABLE。这个TABLE被绑定到一个xmlMessagesXML数据岛上。另外一个区域显示当前的用户;这个区域也是一个包含在DIV中的TABLE,它被绑定到一个xmlUsersXML数据岛上。另外还有一个TEXTAREA供用户输入消息。

时间: 2024-10-09 13:34:32

用IE和SQL2k开发一个XML聊天程序的相关文章

概述IE和SQL2k开发一个XML聊天程序

sql|xml|程序|聊天 不同浏览器之间多年的竞争导致产生了很多工具帮助开发人员完成以前很难做到的任务.现在,只要一小段脚本,你就可以创建一个应用程序将数据绑定到用户控件,这样就可以通过一个内嵌的代理类型的控件与服务器通信. 在 Internet Explorer(IE)中,这些东西包括 XML 数据岛和 XMLHTTP 对象,XML 数据岛用于将数据绑定到表单元素,XMLHTTP 对象用于在当前页面内不导航到其它页面的情况下创建对服务器的同步和异步调用.我将使用这两个易用的特性创建一个简单的

概述IE和SQL2k开发一个XML聊天程序_XML/RSS

不同浏览器之间多年的竞争导致产生了很多工具帮助开发人员完成以前很难做到的任务.现在,只要一小段脚本,你就可以创建一个应用程序将数据绑定到用户控件,这样就可以通过一个内嵌的代理类型的控件与服务器通信. 在 Internet Explorer(IE)中,这些东西包括 XML 数据岛和 XMLHTTP 对象,XML 数据岛用于将数据绑定到表单元素,XMLHTTP 对象用于在当前页面内不导航到其它页面的情况下创建对服务器的同步和异步调用.我将使用这两个易用的特性创建一个简单的聊天应用程序,该应用程序由一

Android 蓝牙开发实例--蓝牙聊天程序的设计和实现

Android 蓝牙开发实例--蓝牙聊天程序的设计和实现 转自:http://blog.csdn.net/dlutbrucezhang/article/details/8963696 作者在这里介绍的这个实例是Google SDK中提供的一个蓝牙聊天程序,简单但信息量巨大,非常适合初学者学习蓝牙方面的知识. 在学习这个实例前请读者仔细阅读并理解Socket的工作原理和实现机制,作者的这篇博客中有详细的介绍: http://blog.csdn.net/dlutbrucezhang/article/

《精通Android 5 多媒体开发》——第22章,第22.3节开发一个屏保程序

22.3 开发一个屏保程序精通Android 5 多媒体开发了解了在Android系统中开发屏保程序的基本原理后,在本节的内容中,将通过一个具体实例的实现流程,来详细讲解开发Android屏保程序的基本流程.本实例的源代码保存在"daima22pingbao"中,下面开始讲解本实例的具体实现流程. 22.3.1 准备素材图片在本实例中,设置屏保程序轮换显示5幅图片,图片的大小是320×480.本实例的素材图片保存在"resdrawable"目录下,效果如图22-1所

使用Weka和IBM BLU纵列数据库开发一个数据挖掘应用程序

本文将了解如何使用 Weka 统计分析工具和 IBM BLU 纵列数据库来开发一个数据挖掘应用程序.Codename: BlueMix 是 一款 beta 级产品,随着我们不断让其功能更加完善和更易于使用,它也将不断改进.我们会竭尽全力保持本文最新,但并不总是完全跟得上现状.感谢大家的理解! 作为一家无线服务供应商公司的客户分析小组中的数据科学家,我们想利用客户数据来预测客户流失情况.对于电信行业来说,客户保留是一个重大挑战,在该行业中,客户年度流失率高达 40%.如果我们可以预测哪些客户存在流

用C#开发UDP协议聊天程序

本节将通过一个实例来讲解,如何利用UDP协议开发多点聊天室程序.首先应在不同的计算机中运行聊天室服务程序,然后打开相应的客户发送端窗体,在客户发送端窗体的文本框中输入与之聊天的计算机IP,然后在"发送聊天信息"文本框中输入聊天信息,单击[发送]即可以将信息发送到目标计算机中. 服务器端实现的具体步骤如下: (1)在VS2005工程中添加一个窗体. (2)首先在代码设计器窗口中引入using System.Net.Sockets和using System.Net命名空间. (3)程序主要

用ASP开发一个在线考试程序(七)

程序|在线 Result.asp 这一页的主要目的是显示结果,同时将这些结果插入数据库以备将来参考.for each item in Request.Formsql_check = "select Count(*) from "&subject&" where answer ='" & Request.Form(item) & "'"Set RS_check = Application("Conn&quo

用ASP开发一个在线考试程序(一)

程序|在线 本文所介绍的应用程序是以ASP编程的初学者为读者的.虽然这个例子非常简单,但是它对于那些试图在线对他们的雇员.学生或客户进行考试的组织是非常有用的. 关于这个应用程序 我们的应用程序中的第一个界面包含在index.asp 中,由一个注册页组成,其中有两个输入域,一个是用户名,另一个是口令.非会员要想参加考试的话必须要注册.这一页是初始屏幕,为用户提供用户名和口令的输入框. 需要注意的是,这两个将要批准的会员域应该有客户机端的JavaScript 确认,以便不把它们作为空白域来传递.i

用ASP开发一个在线考试程序(三)

程序|在线 Sendregister.asp 这一页从register.asp 中取得表单域的内容,将它们插入数据库中.要注意用户名必须是唯一的.所以,首先查询要验证输入的用户名是否已经存在.如果是的话,用户被重新引回register.asp 页,并被要求选择另一个用户名.如果用户名是新的,输入的内容就被传递给数据库.sql_findmember = "select count(*) from loginuser where username = '" & username &