五月开心播播网_国内精品伊人久久久久影院对白_亚洲精品高清视频_国产精品激情_68精品久久久久久欧美_四虎免费av_97精品在线视频_欧美知名女优

您的位置:首頁技術文章
文章詳情頁

chat.asp聊天程序的編寫方法

瀏覽:746日期:2022-06-05 14:09:56

可能朋友們已經(jīng)在一些雜志上看到過 ASP 聊天程序的編寫方法,但作者在這里自己寫了一個更簡單的程序,僅僅使用了一個 .asp 文件。請將以下代碼剪貼到記事簿并保存為chat.asp。

< %@ Language=VBScript %>< %Response.Buffer=true " 設置輸出緩存,用于顯示不同頁面。On error resume next " 忽略程序出錯部分If Request.ServerVariables("Request_Method")="GET" then" 判斷客戶是以什么方式請求 WEB 頁面"------------------------" 客戶登陸界面 "------------------------%>< form method="POST" action="chat.asp">< p>< input type="text" name="nick" size="20" value="nick">< br>< input type="submit" value=" 進入聊天室 " name="B1">< p>< input type="hidden" name="log" size="20" value="1">< br>< /p>< /form>< %Response.End " 結束程序的處理ElseResponse.clear " 清空緩存中的內(nèi)容dim talkIf Request.Form("nick")<>"" then" 判斷客戶是是否在聊天界面中 Session("nick")=Request.Form("nick")End If"------------------------"客戶聊天界面 "------------------------%>< form method="POST" action="chat.asp" name=form1> < p>< %=Session("nick")%> 說話:< input type="text" name="talk" size="50">< br>< input type="submit" value=" 提交 " name="B1">< input type="reset" value=" 取消 " name="B2">< /p>< /form>< A HREF="/asptest/shusheng/chat.asp"> 離開 < /a>< br>< br>< %If Request.Form("log")<>1 thenIf trim(Request.Form("talk"))="" then" 判斷用戶是否沒有輸入任何內(nèi)容 talk=Session("nick")&" 沉默是金。"Elsetalk=trim(Request.Form("talk"))" 去掉字符后的空格 End IfApplication.lockApplication("show")="< table border="0" cellpadding="0" cellspacing="0" width="85%" >< tr>< td width="100%" bgcolor="#C0C0C0">〈/td〉〈/tr〉< tr>< td width="100%">< font color="#0000FF"> 來自 "&Request.ServerVariables("remote_addr")&" 的 "&Session("nick")&time&" 說:< /font>"&talk&"〈/td〉〈/tr〉< tr>< td width="100%" bgcolor="#C0C0C0">〈/td〉〈/tr〉< /table>< br>"&Application("show")Application.UnLockResponse.Write Application("show")End IfEnd If%>

  

下面我們來對這個聊天室程序進行逐步的分析。
   首先,由于聊天室的所有客戶都要能夠共享信息,所以不可避免的要用到具有應用程序級變量的對象 Application,這是建立 Chat 程序的關鍵所在,所有的談話數(shù)據(jù)都存放在一個應用程序級變量中,以便讓所有的客戶讀取。我們可以用所學過的 request 對象獲取客戶所輸入的談話,并保存在變量 talk 中 , 然后將 talk 的值存入應用程序級變量 show 中,如下 :

< % Application("show")=talk&Application("show") %>

   接下來要考慮的是當不同的客戶同時向 Chat 應用程序進行操作的時候如何處理。這個問題其實與在數(shù)據(jù)庫中的兩個用戶同時寫入同一個記錄一樣,如果兩個用戶同時對同一個應用程序級變量進行寫操作,則一個用戶所作的修改會被另一個用戶的操作所覆蓋,所以,如果對 Appliation 對象數(shù)據(jù)的并發(fā)訪問不采取一定措施,則會導致當兩個用戶試圖同時對 Asp 聊天室應用程序提交時,一個用戶的提交內(nèi)容會被另一個用戶的提交內(nèi)容所覆蓋,在被參加到會話中的任何人看到之前就消失了。為了避免這類問題的出現(xiàn),我們需要使用 Application 對象的 Lock 屬性來約束只允許當前的用戶編輯或增加 Application 對象的屬性,這樣當用戶開始修改應用程序級變量開始,到 Application 對象被顯式地 Unlocked 為止,Application 對象的屬性只能被該用戶編輯,如果此時有其他用戶請求編輯 Application 對象,則這些用戶要排隊等待,知道應用程序被 Unlock 為止。如下所示 :
Application.lock
Application("show")=talk&Application("show")
Application.UnLock
   現(xiàn)在整個程序的核心部分你已經(jīng)了解了,下面考慮如何保存客戶信息,這里我們要用到一個會話級變量,即將客戶的 nick 保存在 Session 中。如:

Session("nick")=Request.Form("nick")
   最后,我們要考慮的是如何僅在一個 .asp 文件中處理各種事件 , 如 : 客戶登陸界面、客戶聊天界面。由于客戶第一次請求 .asp 文件時,采用的是簡單的 HTTP GET 方式,但是當客戶向頁面上的表單字段中增加的數(shù)據(jù)并向自身提交表單后,.asp 文件會再次被請求,不過這次數(shù)據(jù)是經(jīng)過 HTTP POST 方式進行傳遞的。文件被請求的方式可以用兩種方法來確定。一是測試 Request.Form 集合是否包含成員,若沒有,則表明沒有發(fā)送給表單處理的數(shù)據(jù)。二是使用 Request.ServerVariables("Request_Method") 變量。如果表單是通過 HTTP GET 方式被請求的,則這個變量會返回“GET”,如果表單被提交處理則返回“POST”。由于后一種方法對于確定文件的請求方式更直接,所以我們使用如下代碼進行判斷 :
if Request.ServerVariables("Request_Method")="GET" then
   由于我們設置了 ASP 緩存,所以當程序判斷頁面請求方式為 GET 時,程序運行 Response.End,來結束后面的所有操作,否則則運行 Response.clear, 清空緩存中已有的內(nèi)容,并繼續(xù)程序的運行。這樣我們就得以用同一個 .asp 文件根據(jù)不同情況給客戶顯示不同的界面。
   好了,我已經(jīng)將這個 ASP Chat 程序的核心部分告訴大家了,剩下的一些細節(jié)性問題請各位自己讀程序吧,其實這個程序還存在很多不足之處,最大的毛病是我沒有寫自動刷新的功能,因此如果你在Chat 中不說話,那也就看不到其他客戶所說的話了。

Chat 在 Internet 中的魅力大家是知道的,其實,用 ASP 也完全能做到同 irc 類似的強大功能,當然這就需要寫更多的代碼,如果大家有興趣的話可以更深入的進行學習,和大家交流經(jīng)驗成果。

標簽: ASP
相關文章:
久久久精品久久久久久96| 免费观看30秒视频久久| 色网址在线观看| 亚洲av无码一区二区三区dv| 91精品国产高清91久久久久久| 久久99精品久久久久久秒播放器 | 国产中文字幕一区二区三区| 99福利在线| 日韩日韩日韩日韩| 久久精品一区二区三区资源网| 91麻豆精品在线| 亚洲AV成人无码网站天堂久久| 天堂中文视频在线| 日韩影视精品| 国产精品女人网站| 日韩在线视频网| 555www色欧美视频| 亚洲精品视频一区| 91亚洲午夜精品久久久久久| 国产欧美三级| 成人在线免费小视频| 欧美黑粗硬大| 国产自产自拍视频在线观看| 日韩二区三区| 欧美xxxxxbb| 成人午夜福利视频| 国产精品成人无码| 国产成人亚洲精品自产在线 | 欧美人与性动交| 亚洲欧美日韩天堂一区二区| 欧美日韩mp4| 欧美性猛交99久久久久99按摩| 中文欧美字幕免费| 国产a区久久久| 精彩视频一区二区三区| aa国产精品| 在线成人h网| 欧美三级特黄| 欧美成熟视频| 久久美女视频| 精品国产一级毛片| 九九亚洲视频| 国产欧美日韩| 嫩草一区二区三区| 丝袜美腿综合| 色棕色天天综合网| 国产精选一区| 欧美日韩国产高清电影| 久久综合欧美| 蜜桃一区二区三区| 欧美理论电影大全| 日韩在线二区| 日韩免费视频| 欧美在线91| 在线视频精品| 麻豆精品国产传媒mv男同 | av成人黄色| av成人天堂| 久久久久久色| 美日韩一区二区三区| 韩国三级在线一区| 成人性生交大片免费看中文| 成人av电影在线播放| 99天天综合性| 中文字幕精品在线不卡| 亚洲欧美在线高清| 精品日本高清在线播放| 欧美午夜不卡在线观看免费| 欧美一区二区三级| 色就是色亚洲色图| 日韩精品dvd| 欧美手机在线视频| 视频一区二区综合| 卡一卡二卡三在线观看| 亚洲另类在线一区| 一区二区三区精密机械公司| 午夜精品久久久久久久99樱桃| 欧美日韩免费一区| 欧美日韩国产综合一区二区三区| 欧美一级艳片视频免费观看| 精品视频久久久久久久| 国产白丝精品91爽爽久久| 7777精品视频| 虎白女粉嫩尤物福利视频| 日本免费观看视| 激情小视频在线观看| 欧美 日韩 国产 一区| 亚洲电影第1页| 人妻一区二区视频| 91九色91蝌蚪| 国产精品久久久久久久蜜臀| 成人自拍视频在线| 中文字幕精品综合| 欧美午夜无遮挡| 亚洲国产97在线精品一区| 日韩在线观看高清| 国产99久久精品一区二区永久免费| 91黄在线观看| japanese在线播放| √天堂资源在线| av电影在线不卡| 免费黄色小视频在线观看| 午夜小视频免费| 成人淫片免费视频95视频| 美国成人毛片| 天然素人一区二区视频| 日韩理论在线| 国产剧情一区在线| 亚洲国产精品一区二区久久 | 国产精品视频看| 欧美日韩一区二区三区视频| 日韩在线视频线视频免费网站| 国产在线观看一区二区三区| 18视频在线观看娇喘| 挪威xxxx性hd极品| 久久99国产综合精品免费| 国内精品久久久久久久久蜜桃| 羞羞网www| 经典三级一区二区| 93在线视频精品免费观看| 成人一区在线看| 欧美三区在线观看| 久久久最新网址| 欧美一级免费在线观看| 无码人妻精品一区二区三应用大全| 在线视频你懂得| 成人禁在线观看网站| 国产原创精品视频| 牛牛精品成人免费视频| 青青草97国产精品免费观看无弹窗版| 亚洲欧美在线另类| 国产亚洲免费的视频看| 国产精品久久久久久久免费大片| 奇米影视四色在线| 久久精品视频1| a√在线视频| 偷拍自拍在线看| 在线成人av| 亚洲一区二区黄色| 欧美成人激情在线| 黄色www在线观看| 欧美日韩生活片| 国产又白又嫩又紧又爽18p| 国产高清一区二区三区视频| 日韩av在线播放网址| 中文成人综合网| 中文字幕日韩视频| 日本黄色a视频| 老湿机69福利| 国产aⅴ超薄肉色丝袜交足| 深夜国产在线播放| 136国产福利精品导航网址| 亚洲高清免费一级二级三级| 欧美精品久久久久久久久久| 91九色在线观看视频| 中文亚洲av片在线观看| 超碰在线94| 欧美精选一区二区三区| 亚洲三级在线免费观看| 国内精品小视频| 91av俱乐部| 国产精品高潮呻吟久久久| 日韩电影免费| 亚洲久久久久| 欧美色欧美亚洲高清在线视频| 欧美怡红院视频一区二区三区| 天堂一区在线观看| 少妇精品高潮欲妇又嫩中文字幕| 黄黄的网站在线观看| 国产农村妇女精品一区二区| 在线精品国精品国产尤物884a| 成人免费观看网站| 男人晚上看的视频| jizzjizz日本护士视频| 中文在线综合| 亚洲欧洲成人av每日更新| 国产成人精品av在线| 亚洲色图欧美日韩| 18free性欧美另类hd| 久久的色偷偷| 国产精品激情偷乱一区二区∴| 26uuu久久噜噜噜噜| yjizz视频| 丰满少妇又爽又紧又丰满电影| 亚洲精品乱码日韩| 国产精品天天看| 成人福利视频在线观看| 国产精品suv一区二区88| 免费在线观看视频| 欧美三级在线| 亚洲第一av在线| 37pao成人国产永久免费视频| 香蕉久久国产av一区二区| 国产精品99久久久久久董美香| 久久精品亚洲精品国产欧美kt∨ | 国产在线视频一区二区| 中文字幕亚洲专区| 久久久久久久久久一区| 羞羞影视羞羞在线| 成人短片线上看|