經過一個階段的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">
<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聊天室程序,大家可以隨著學習的深入不斷加強它的功能!