用ASP建立一个简单的聊天室
时间:2007-09-21 12:43:00
经过一个阶段的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
把局部变量设置为在应用范围内有效.
Applicati "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">
<div align="center"><center><p>发言:<input type="text" name="txtCents" size="34"></p>
</center></div><div align="center"><center><p>对象:<input type="submit" value="送出" name="B1"></p>
</center></div>
</form>
4.完成.只要把2,3步的代码前后加入完整的htm文件代码然后存为aspchat.asp就可以了,这是一个很简单的asp聊天室程序,大家可以随着学习的深入不断加强它的功能!
标签:聊天室,asp
0
投稿
猜你喜欢
div、section、article 的区别
2011-02-26 15:39:00
如何实现表单提交时提示正在发送
2008-12-23 13:30:00
白鸦:内容设计,初始内容
2008-03-04 16:23:00
border-radius与圆角
2008-12-29 14:05:00
打造设计你自己的字体 Ⅲ
2008-03-14 07:52:00
如何给 legend 标签设定宽度
2008-07-26 12:18:00
CSS在页面布局中实现div水平居中的方法总结
2008-06-03 12:09:00
符合w3c标准flash插入代码,常用flash参数设置
2009-01-20 18:47:00
MHTML在ie7/vista bug 解决方案
2010-02-01 12:42:00
完美解决MySQL中文乱码
2011-03-16 15:16:00
利用CSS属性实现进度条的方式
2010-02-25 12:31:00
如何把中文转换为UNICODE?
2009-11-07 18:39:00
推荐:怎么用javascript进行拖拽
2007-09-21 20:14:00
Linux操作系统中如何安装MySQL数据库
2007-10-26 15:58:00
小型分页的设计
2011-08-18 18:32:26
网站重构到底是什么
2008-11-03 11:30:00
简单的水果风暴的算法过程
2009-12-13 15:49:00
浏览器中的内存泄露
2008-05-03 16:53:00
功能和外观都还不错的js版幻灯片效果
2007-08-05 12:20:00
Dreamweaver MX 2004 试用心得
2010-03-25 12:21:00