經過一個階段的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>
完成.只要把2,3步的代碼前後加入完整的htm文件代碼然後存為aspchat.asp就可以了,這是一個很簡單的asp聊天室程序,大家可以隨著學習的深入不斷加強它的功能!