当前位置: 首页 > 图文教程 > 网络编程 > ASP > 一个简单聊天室的建立.(供学习参考)

ASP
asp分页(自己整理的2个分页程序)
ASP常用的系统配置函数
雨哲防采集策略之列表篇
雨哲浅谈关于防采集而不影响收录内容篇
asp数据库连接函数
ajax XMLHTTP Post Form时的表单乱码综合解决
ASP注入详细命令40条
用ASP实现MSSQL用户密码破解
ASP创建对象的两种方法比较
ASP字符串转换为整形、双精度型、布尔
ASP计算str2在str1中出现的次数
asp采集抓取网上房产信息的代码
ASP注册登陆实例代码
ASP中使用FileSystemObject时提高性能的方法
分享一个好东东,动态Include文件 (Dynamic File Includes)
解决 JScript 中使用日期类型数据时出现类型错误的问题
在ASP里面创建GUID
在JScript中使用缓存技术的实际代码
ASP javascript Application对象的Contents和StaticObjects做Cache的一些经验
海阳2006+功能中的潜水王

ASP 中的 一个简单聊天室的建立.(供学习参考)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 135 ::
收藏到网摘: n/a

   

沙滩小子

      经过一个阶段的asp学习,下面我们结合所学过的内容建立一个最简单的聊天室,虽然很简单,但是大家可以通过他来掌握一个聊天室建立的基本过程,并且可以不断的完善其功能.

      下面介绍其主要步骤:

      1,添加Global.asa文件里面的代码.这部分代码主要处理Application_onStart事件,在此事件中,定义了一个有15个元素的数据,并把它赋给了一个Application对象的属性.Global.asa文件的内容如下.
<SCRIPT LANGUAGE="VBScript" RUNAT="Server">
    SUB Application_OnStart
    dim maChats(15) '定义一个具有15个元素的数据.
    Application("gaChats")=maChats '存储谈话的内容.
    Application("giCounter")=0 '存储已有的谈话数目.
    END SUB
</SCRIPT>


      2,在AspChat.asp文件中添加代码.注意,要把这部分代码添加在主页中的两条水平线之间,也就是文本中的两个<hr>之间.程序首先判断申请这幅主页时,是否用的是"Post"方法,因为本例中窗口的提交方法是"post".而一般第一次申请这幅主页时,用的是"get"方法.所以如果采用的是"post"方法的话,就说明是某一浏览者在提交自己的谈话内容时的重新申请,这就要进行处理,因为又有新的谈话内容了.否则,说明某一浏览者第一次申请此主页,并没有提交什么谈话,因此只需要把当前的谈话内容显示出来就可以了.
    <p align="center"><font size=5>一个简单的聊天室</font></p>
    <br>
    <%
    '处理输入
    if Request.ServerVariables("Request_Method")="POST" then
    '标明讲话者
    if len(Request("txtWho"))>0 then
    Session("ssWho")=Request("txtWho")
    end if
    '封锁Application对象
    Application.Lock
    '创建本地引用指针
    mlCounter=Application("giCounter")
    maChats=Application("gaChats")
    '如果写入的行数超过10,则重新开始记数.
    if mlCoundter>9 then
    mlCoundter=0
    end if
    '增加用户的输入,计数器加1
    maChat(mlChounter)=Session("ssWho")&":"&Request("txtCents")
    mlCounter=mlCounter+1
    '把局部变量设置为在应用范围内有效.
    Application("giCounter")=mlCounter
    Application("gaChats")=maChat
    '消除Application对象的封锁
    Application.Unlock
    end if
    %>
    <%
    '写入TextArea
    if Application("giCounter")=0 then
    lstemp=Application("gaChats")(0)
    else
    for x=0 to Application("giCounter")-1
    lstemp=lstemp&"<br>"Application("gaChats")(x)
next
    end if
    Response.white lstemp
    %>
    <hr>

     3,最后把txtWho的内容初始化.也就是当浏览者输入过一次自己的姓名以后就不用再次输入了,为了区分每个不同的浏览者,在这里使用了"Session"对象.利用Session("ssWho")记载浏览者的姓名.下面的代码直接写在以上代码的下面存入AspChat.asp中.
    <form method="POST" action="aspchat.asp" name="frmAsp">