|
|
||||
首页
文学作品 网页设计 平面设计 程序设计 考试认证 基础办公 QQ资源 服务器架设 网站运营 网页资源
|
|
|
| 汉南在线 → 网页设计 → Asp动态程序 | |||||||||||
前面一章讲了SESSION的用法,其实,APPLICATION的用法与SESSION差不多,主要的区别是不同的用户可以共享同一个APPLICATION变量,其实,使用APPLICATION对我们开发程序中,起到了非常重要的作用。
还没想到有什么作用吧。来,我们先看一个例子”多人聊天室“。 现在我们所做的例子使用APPLICATION对象来实现的。 (由于环境所限制,测试不能在这里进行,请你把源代码放到你的机器进行测试,请体谅!) global.asa 下载该源代码 < SCRIPT LANGUAGE=VBScript RUNAT=Server> sub Application_OnEnd end sub Sub Session_OnStart < /SCRIPT>
< %@ Language=VBScript %> < BODY> < % if Request.Form("name")< > "" then Session("name")=Request.Form("name") end if < %=Application("Msg1")%> 当你启动一个浏览器浏览该页时,在线人数加一,在线人数的累加是通过以下的代码实现的。 Sub Session_OnStart Application.Lock Application("SessionNo")=Application("SessionNo")+1 Application.UnLock End Sub 每当你启动一次浏览器(当然需要浏览该页了),WEB SERVER 就自动执行 Session_OnStart 事件 当用户超时(前面已经讲过了 SESSION)或执行 Abandon 时,便执行 Session_OnEnd 事件。 而为什么要执行Application.lock 该语句呢?由于WEB 上许多人在共享该变量,当用LOCK锁起 来时,其他的用户就不能使用,非得该用户完成 Application("SessionNo")=Application("SessionNo")+1 和 Application.UnLock ,其他用户才能使用该变量。这样做是为了多人访问时,不至于变量之间 的冲突。当一个SESSION结束时,在线人数减一,就是通过以下代码实现: sub Session_OnEnd Application.Lock Application("SessionNo")=Application("SessionNo")-1 Application.UnLock end sub 现在明白了如何统计在线人数吧(当然还有许多种方法可以实现) if Request.Form("name")< > "" then Session("name")=Request.Form("name") end if 而以上的这段代码是当你输入名称后,把你的名称放到 Session("name") 中存储,以后就可以通过 使用该变量来显示不用用户的名称了。 以下的代码就是存放每个人所说的话的: if Request.Form("chat")< > "" then 由于每个用户所说的话存放到APPLICATION对象中,必须通过以下的语句显示出来: < %=Application("Msg1")%> 其他的代码不用我多说了吧!这只是一个简单聊天室的雏形,你需要发挥你的努力才能做出出色的聊天室哦!
| |||||||||||
| >> 相关文章 | |||||||||||
|
授权使用:汉南在线 http://www.hzwz.net/(2008-2009) Copyright (c) 2002-2007 汉南在线. All Rights Reserved . 经营许可证:陕ICP备05000109号 Powered by:汉南在线 |