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

ASP
javascript asp教程More About Recordsets
javascript asp教程添加和修改
javascript asp教程 日期相关
简单的ASP分页代码(测试正确)
用ASP打开远端MDB文件的方法
asp下同一空间多绑多哥域名的方法
asp下实现替换远程文件为本地文件并保存远程文件的代码
asp,VBscript语法错误,史上最全最详细最精确
讲解ASP方面的知识比较全的asp学习教程
给万博系统的新闻系统增加分页功能[配有详细说明]
在asp中通过vbs类实现rsa加密与解密的代码
一段在asp中加密与解密对应的函数
通过MSXML2自动获取QQ个人头像及在线情况(给初学者)
用ASP VBS xmlhttp adodbstream下载和保存图片的代码
厉害的用Asp获取Dll加密新闻内容
用正则和xmlHttp实现的asp小偷程序
ASP之简化创建关闭记录集对象并创建使用简单的MSSQL存储过程
ASP中怎么实现SQL数据库备份、恢复!
asp中实现随机分组程序的代码
asp之字符串操作函数

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 223 ::
收藏到网摘: 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">