-
asp.net教程之ASP实现OICQ式的信息收发功能
在ASP中实现OICQ式的发信息功能,实现此功能的方法很多,在此我主要介绍以数组存取信息的方式。
在ASP中定义一个数组变量:APPLICATION(ID,IX)(例:APPLICATION(100,30)),ID表示用户号,可以是100,就是同时可以让100个用户使用在线信息发送,一个用户有一个唯一的ID;后面的IX是一个用户的信息条数!数值为30时,就是一个用户可以同时最多可以放30条信息。
当一个用户登陆时就给这个用户分配一个没有被用户占用的ID号(比方说用户ID为3),有人发信息给他时,只要把发的信息存入APPLICATION(3,IX),在存入前要先判断这个APPLICATION(3,IX)是否为空,为空时才把信息存进去。如果不为空,就把IX+1,如果APPLICATION(3,IX+1)还是不为空,就把IX+2......到了30,就返回信息已满,叫这个用户一会儿再发。(可以用For ... Next语句实现上面的IX+几的功能。IX就从1到30,0还有别的用处)
用户如何收到其它用户发来的信息呢?在一个页面的<head></head>中用“<meta http-equiv=refresh content='5;url=XX.asp'>”,其中5是调用的时间间隔,此值可以让你设定检查有没有用户发自信给您的时间间隔。再在这个XX.asp页面来检查自己的ID号的APPLICATION(ID,IX)里的信息,这里的IX要从1到30都检查一次(可以用For ... Next语句),不从0开始的原因0还有别的用处。如其中的一个数组APPLICATION(ID,IX)中有信息,就把信息发到用户的浏览器,并把相应的数组APPLICATION(ID,IX)里的信息清空,以便存放新的信息。
还有一点重要的是怎么样知道一个ID是否已被占用,至于用户占用一个ID时,就把APPLICATION(ID,0)值为用户名,这样APPLICATION(ID,0)有了值,就说明此ID已经被占用,其它新登陆的用户使用ID时,就用语句判断APPLICATION(ID,0)的值是否为空,如果为空,就说明此ID没有被占用。如果一个用户关闭浏览器,你必须一定要清空此ID的APPLICATION(ID,0)的值,不然此ID永远是被占用的,其它用户就不能使用此ID。
关于ASP中实现OICQ式的发信息功能已经基本上完成,如果你想做得更好,比方说用用户名代替用户的ID,因为怎么说名字比数字的ID好记,那你得好好动一下脑筋,因为上面的细路已经实现了这个功能。
在ASP中定义一个数组变量:APPLICATION(ID,IX)(例:APPLICATION(100,30)),ID表示用户号,可以是100,就是同时可以让100个用户使用在线信息发送,一个用户有一个唯一的ID;后面的IX是一个用户的信息条数!数值为30时,就是一个用户可以同时最多可以放30条信息。
当一个用户登陆时就给这个用户分配一个没有被用户占用的ID号(比方说用户ID为3),有人发信息给他时,只要把发的信息存入APPLICATION(3,IX),在存入前要先判断这个APPLICATION(3,IX)是否为空,为空时才把信息存进去。如果不为空,就把IX+1,如果APPLICATION(3,IX+1)还是不为空,就把IX+2......到了30,就返回信息已满,叫这个用户一会儿再发。(可以用For ... Next语句实现上面的IX+几的功能。IX就从1到30,0还有别的用处)
用户如何收到其它用户发来的信息呢?在一个页面的<head></head>中用“<meta http-equiv=refresh content='5;url=XX.asp'>”,其中5是调用的时间间隔,此值可以让你设定检查有没有用户发自信给您的时间间隔。再在这个XX.asp页面来检查自己的ID号的APPLICATION(ID,IX)里的信息,这里的IX要从1到30都检查一次(可以用For ... Next语句),不从0开始的原因0还有别的用处。如其中的一个数组APPLICATION(ID,IX)中有信息,就把信息发到用户的浏览器,并把相应的数组APPLICATION(ID,IX)里的信息清空,以便存放新的信息。
还有一点重要的是怎么样知道一个ID是否已被占用,至于用户占用一个ID时,就把APPLICATION(ID,0)值为用户名,这样APPLICATION(ID,0)有了值,就说明此ID已经被占用,其它新登陆的用户使用ID时,就用语句判断APPLICATION(ID,0)的值是否为空,如果为空,就说明此ID没有被占用。如果一个用户关闭浏览器,你必须一定要清空此ID的APPLICATION(ID,0)的值,不然此ID永远是被占用的,其它用户就不能使用此ID。
关于ASP中实现OICQ式的发信息功能已经基本上完成,如果你想做得更好,比方说用用户名代替用户的ID,因为怎么说名字比数字的ID好记,那你得好好动一下脑筋,因为上面的细路已经实现了这个功能。
栏目列表
最新更新
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
Python初学者友好丨详解参数传递类型
如何有效管理爬虫流量?
SQL SERVER中递归
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
这是目前我见过最好的跨域解决方案!
减少回流与重绘
减少回流与重绘
如何使用KrpanoToolJS在浏览器切图
performance.now() 与 Date.now() 对比
一款纯 JS 实现的轻量化图片编辑器
关于开发 VS Code 插件遇到的 workbench.scm.
前端设计模式——观察者模式
前端设计模式——中介者模式
创建型-原型模式