成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

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

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

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

可能朋友們已經在一些雜志上看到過 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 " 清空緩存中的內容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" 判斷用戶是否沒有輸入任何內容 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 程序的關鍵所在,所有的談話數據都存放在一個應用程序級變量中,以便讓所有的客戶讀取。我們可以用所學過的 request 對象獲取客戶所輸入的談話,并保存在變量 talk 中 , 然后將 talk 的值存入應用程序級變量 show 中,如下 :

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

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

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

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

標簽: ASP
相關文章:
成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久
国产91综合网| 国产成人免费视频一区| 91美女精品福利| 亚洲第一在线综合在线| 日韩午夜激情视频| 日本中文字幕一区| 一本色道久久综合亚洲精品高清 | 麻豆精品在线看| 亚洲第一网站| 久久精品在线观看| 亚洲乱码视频| 亚洲天堂久久久久久久| 一区在线观看视频| 久久99国产精品麻豆| 久久亚洲综合| 日本中文字幕不卡| 日本丶国产丶欧美色综合| 五月综合激情网| 一本到高清视频免费精品| 午夜激情一区二区| 色域天天综合网| 蜜臀国产一区二区三区在线播放| 麻豆精品91| 蜜臀av性久久久久蜜臀aⅴ| 日本精品裸体写真集在线观看| 日韩国产在线观看一区| 色94色欧美sute亚洲线路一久| 免费一级欧美片在线观看| 91传媒视频在线播放| 精品一区二区久久久| 欧美一区二区在线免费播放| 成人免费的视频| 国产午夜亚洲精品午夜鲁丝片| 亚洲电影视频在线| 精品国产91乱码一区二区三区 | 国产精品区一区| 午夜久久久久久久久| 欧美在线一区二区三区| 韩国成人在线视频| 精品盗摄一区二区三区| 欧美久久久久久| 亚洲欧美日韩电影| 午夜在线播放视频欧美| 久久97超碰色| 久久人人爽爽爽人久久久| 韩日在线一区| 亚洲va国产va欧美va观看| 欧美日韩一区二区电影| 波多野结衣的一区二区三区| 日本一二三不卡| 亚洲欧美日韩国产一区| 精品一区二区三区免费观看| 国产亚洲综合av| 亚洲视频1区| 国内国产精品久久| 久久精品欧美日韩| 麻豆成人av| 日韩一区二区在线观看| 日本欧美肥老太交大片| 日韩欧美中文字幕精品| 伊甸园精品99久久久久久| 午夜视频在线观看一区| 日韩一区二区三区免费看| 黄色av一区| 美女视频一区二区三区| 久久久午夜精品| 亚洲欧美日韩在线观看a三区 | 六月丁香婷婷色狠狠久久| 日韩免费电影网站| 亚洲精品一区二区三区樱花 | 蜜臀av亚洲一区中文字幕| 久久久亚洲高清| 久久久www| 99精品欧美一区二区三区综合在线| 亚洲伦理在线精品| 日韩一区二区三区av| 中文亚洲字幕| 成人av在线网| 99精品视频免费| 亚欧色一区w666天堂| 久久久久网站| 91麻豆免费看| 麻豆成人在线观看| 中文字幕制服丝袜一区二区三区 | 日日欢夜夜爽一区| 中文字幕免费一区| 欧美日韩国产影片| 999在线观看精品免费不卡网站| 国产精品中文字幕欧美| 亚洲影院在线观看| 国产偷v国产偷v亚洲高清| 欧美视频日韩视频在线观看| 亚洲黄页一区| av在线综合网| 国产主播一区二区| 亚洲一区二区三区中文字幕| 国产肉丝袜一区二区| 在线播放中文字幕一区| 亚洲免费影院| 99亚偷拍自图区亚洲| 欧美日韩激情一区二区三区| 亚洲一区免费| 99精品国产热久久91蜜凸| 人妖欧美一区二区| 亚洲免费在线观看视频| 久久这里只有精品首页| 欧美三级在线看| 国产精品夜夜夜一区二区三区尤| 欧美在线黄色| 国产91高潮流白浆在线麻豆| 日韩精品一二三| 一区二区欧美视频| 欧美激情在线一区二区三区| 日韩免费电影网站| 欧美电影在线免费观看| 色就色 综合激情| 亚洲一区成人| 一区二区不卡在线视频 午夜欧美不卡'| av欧美精品.com| 高清在线不卡av| 国内精品久久久久影院薰衣草| 日欧美一区二区| 亚洲国产精品一区二区久久 | 精品中文av资源站在线观看| 精品奇米国产一区二区三区| 99pao成人国产永久免费视频| 国产成人自拍高清视频在线免费播放| 日产国产欧美视频一区精品| 亚洲一区二区在线观看视频| 自拍偷拍国产亚洲| 中文字幕在线观看一区二区| 国产色一区二区| 国产欧美精品一区| 国产欧美va欧美不卡在线| 2017欧美狠狠色| 久久婷婷色综合| 久久久国际精品| 国产午夜亚洲精品羞羞网站| 国产女同互慰高潮91漫画| 日本一区二区三区视频视频| 中文在线免费一区三区高中清不卡| 国产日韩欧美a| 国产精品理论在线观看| 专区另类欧美日韩| 艳妇臀荡乳欲伦亚洲一区| 亚洲第一久久影院| 热久久一区二区| 久久99精品国产.久久久久久| 韩国精品免费视频| 成人午夜免费av| 91在线视频18| 国产字幕视频一区二区| 亚洲久久在线| 人妖欧美一区二区| 欧美日韩在线播放三区四区| 黄色日韩三级电影| 国产精品亚洲午夜一区二区三区| 国产在线国偷精品免费看| 国产精品亚洲综合一区在线观看| 粉嫩绯色av一区二区在线观看 | 亚洲蜜臀av乱码久久精品蜜桃| 亚洲激情在线激情| 亚洲成av人片在线观看| 精品在线视频一区| 波多野结衣精品在线| 亚洲网友自拍| 一本一道波多野结衣一区二区| 欧美日韩卡一卡二| 久久这里只精品最新地址| 中文字幕中文字幕一区| 五月天国产精品| 高清成人在线观看| 狠狠入ady亚洲精品| 老**午夜毛片一区二区三区| 91精品国产综合久久精品| 中文字幕国产一区二区| 亚洲成人免费在线观看| 国产一本一道久久香蕉| 欧美日韩一区二区三区在线观看免 | 日韩精品资源二区在线| 亚洲特黄一级片| 视频一区二区国产| 成人高清av在线| 宅男噜噜噜66国产日韩在线观看| 欧美日韩国产小视频| 中文字幕av免费专区久久| 日韩在线一二三区| 91在线观看视频| 久久精品九九| 久久久久久久久蜜桃| 亚洲成av人**亚洲成av**| 不卡一区二区中文字幕| 亚洲免费中文| 久久久久久久久久久黄色| 午夜精品免费在线观看| av在线播放一区二区三区| 麻豆精品网站| 国产亚洲欧洲997久久综合| 青草av.久久免费一区| 欧美日韩一区二区视频在线|