用ASP程序?qū)崿F(xiàn)網(wǎng)站在線人數(shù)統(tǒng)計(jì)_ASP教程
推薦:ASP例子:ASP把漢字轉(zhuǎn)化為拼音的函數(shù)拼音不夠全面,不推薦使用,學(xué)習(xí)一下方法而已~ 以下為引用的內(nèi)容: <% Set d = CreateObject("Scripting.Dictionary") d.add &quo
在瀏覽網(wǎng)頁(yè)的時(shí)侯,常�?梢钥匆�(jiàn)一些“當(dāng)前網(wǎng)站上的人數(shù)是XXX人”的在線人數(shù)同計(jì)。如何用ASP來(lái)做一個(gè)呢?首先,分析一下它的做法,一般來(lái)說(shuō),這些線上人數(shù)統(tǒng)計(jì)都是指一個(gè)時(shí)段內(nèi)的訪客人數(shù)統(tǒng)計(jì)。比如(5分鐘內(nèi),10分鐘內(nèi))而這個(gè)時(shí)間的長(zhǎng)短,是由設(shè)計(jì)者設(shè)定的。
在這個(gè)時(shí)段內(nèi)同計(jì)各個(gè)不同IP的訪客總數(shù),就可以得出當(dāng)前的線上人數(shù)了,但這里有一個(gè)精確問(wèn)題需要解決,至于用什么辦法來(lái)精確地統(tǒng)計(jì),那就是各人不同的做法了,比如可以用自動(dòng)提交的頁(yè)面,隔一段時(shí)間讀取COOKIES等等,而在ASP中,有一個(gè)更好的技巧,就是使用session對(duì)象來(lái)統(tǒng)計(jì),這里介紹一下gobal.asa這個(gè)文件,這是一個(gè)很重要的一個(gè)文件,請(qǐng)看看它的結(jié)構(gòu)。
| 以下為引用的內(nèi)容: <SCRIPT LANGUAGE="VBScript" RUNAT="Server"> Sub Session_OnStart End Sub Sub Session_OnEnd End Sub sub Application_OnStard End Sub sub Application_OnEnd End Sub</SCRIPT> |
當(dāng)有一個(gè)會(huì)話發(fā)生時(shí)(用戶瀏覽網(wǎng)頁(yè),向Web服務(wù)器發(fā)出請(qǐng)求)那么,如果自服務(wù)器啟動(dòng)后第一個(gè)用戶的話,就會(huì)同時(shí)發(fā)生Application_OnStard和Session_OnStart這兩個(gè)事件,之后,再有別的用戶發(fā)出請(qǐng)求的話,就只發(fā)生Session_OnStart這個(gè)事件,而session的生存期是多長(zhǎng),是可以設(shè)定的,Session.timeout=X(分鐘)
好了,有了這個(gè)很好用的方法,我們就能準(zhǔn)確地統(tǒng)計(jì)出在線人數(shù)了,而人數(shù)總計(jì)是用一個(gè)application變量來(lái)保存,當(dāng)在第一個(gè)會(huì)話開(kāi)始時(shí),在Application_OnStard事件中放置一條清空計(jì)數(shù)器的語(yǔ)句application("online")=0,然后,在Session_OnStart事件中,放置一條增加在線人數(shù)的語(yǔ)句application("online")=application("online") 1,而在Session_OnEnd事件相應(yīng)地放一條減少在線人數(shù)的語(yǔ)句,令計(jì)數(shù)值減一。
這樣,這個(gè)文件就改為如下
| 以下為引用的內(nèi)容: <SCRIPT LANGUAGE="VBScript" RUNAT="Server"> Sub Session_OnStart application("online")=application("online") 1 End Sub Sub Session_OnEnd application("online")=application("online")-1 End Sub sub Application_OnStard application("online")=0 End Sub sub Application_OnEnd application("online")=0 End Sub</SCRIPT> |
接下來(lái)編一個(gè)顯示圖形數(shù)字的程序,把在線人數(shù)顯示在指定的頁(yè)面上。這樣就能得出在人數(shù)了
| 以下為引用的內(nèi)容: *online.asp <% @language="vbscript" %> for I=dbbits to 1 step -1 response.write "document.write("&images(I)&");" next %> |
上面的程序很簡(jiǎn)單,這里不作分析了,請(qǐng)大家自己閱讀一下。在調(diào)用在線統(tǒng)計(jì)的頁(yè)面上用一句script語(yǔ)句引用online.asp文件,以顯示圖形統(tǒng)計(jì)器。
| 以下為引用的內(nèi)容: <script language="JavaScript" src="http://xxxx.com.cn/online.asp"></script> |
現(xiàn)在可以了,記住要點(diǎn),你必須把gobal.asa放在正確的web應(yīng)用程序根目錄上,而最好單獨(dú)為這個(gè)統(tǒng)計(jì)新建一個(gè)web應(yīng)用程序,不要與其它別的程序混亂了,不然得出的數(shù)據(jù)是不準(zhǔn)確的,而把這個(gè)程序修改為多用戶的在線統(tǒng)計(jì)也很簡(jiǎn)單。這樣就可以提供在線統(tǒng)計(jì)服務(wù)了,如何實(shí)現(xiàn)請(qǐng)又大家去思考一下吧....
分享:入門:初學(xué)ASP動(dòng)態(tài)網(wǎng)頁(yè)制作常用錯(cuò)誤處理ASP錯(cuò)誤處理 ASP是非常簡(jiǎn)單的,以至于許多的開(kāi)發(fā)者不會(huì)去思考錯(cuò)誤處理。錯(cuò)誤處理能夠讓你的應(yīng)用程序更加合理。我看到過(guò)很多個(gè)用ASP編寫的商業(yè)網(wǎng)站,大多數(shù)都忽略了錯(cuò)誤處理。 錯(cuò)誤的類型
- asp FSO 讀寫文件本文件實(shí)現(xiàn)代碼
- asp中isNull、isEmpty和空字符串的區(qū)別
- asp獲取用戶真實(shí)IP地址的方法
- asp連接sqlserver數(shù)據(jù)庫(kù)實(shí)現(xiàn)代碼
- asp中正則表達(dá)式過(guò)濾html代碼函數(shù)
- asp中g(shù)et post提交表單區(qū)別
- 網(wǎng)頁(yè)模板:ASP內(nèi)建對(duì)象Request
- xmlhttp的open方法使用詳解
- ASP的常用的自定義函數(shù)大全
- asp中用for循環(huán)的一個(gè)小技巧
- eWebEditor v3.8 列目錄
- ASP無(wú)組件分頁(yè)實(shí)現(xiàn)思路及代碼
ASP教程Rss訂閱編程教程搜索
ASP教程推薦
- 用ASP建立一個(gè)簡(jiǎn)單的聊天室
- 經(jīng)典!5分鐘編寫一個(gè)ASP論壇
- 解讀用asp編寫類似搜索引擎功能的代碼
- ASP長(zhǎng)數(shù)字用逗號(hào)隔開(kāi)顯示實(shí)例代碼
- ASP Error對(duì)象的技巧
- ASP教程:ASP生成偽參數(shù)的技巧
- ASP實(shí)現(xiàn)長(zhǎng)文章手動(dòng)分頁(yè)的代碼
- 將ASP動(dòng)態(tài)網(wǎng)頁(yè)轉(zhuǎn)換成HTM靜態(tài)頁(yè)面的方法
- ASP程序代碼執(zhí)行時(shí)間統(tǒng)計(jì)類
- ASP技巧:提高使用Request集合的效率
- 相關(guān)鏈接:
復(fù)制本頁(yè)鏈接| 搜索用ASP程序?qū)崿F(xiàn)網(wǎng)站在線人數(shù)統(tǒng)計(jì)
- 教程說(shuō)明:
ASP教程-用ASP程序?qū)崿F(xiàn)網(wǎng)站在線人數(shù)統(tǒng)計(jì)
。