国产午夜成人免费看片无遮挡_日本免费xxxx色视频_免费人成网上在线观看_黄网址在线永久免费观看

當前位置:雨林木風下載站 > 技術開發教程 > 詳細頁面

深入研究Application與Session對象(3)

深入研究Application與Session對象(3)

更新時間:2022-05-14 文章作者:未知 信息來源:網絡 閱讀次數:

三、Global.asa

  ASP的Application和Session對象體現了其他ASP內置對象所沒有的特征--事件。每一個訪客訪問服務器時都會觸發一個OnStart事件(第一個訪客會同時觸發Application和Session的OnStart事件,但Application先于Session),每個訪客的會話結束時都會觸發一個OnEnd事件(最后一個訪客會話結束時會同時觸發Application和Session的OnEnd事件,但Session先于Application)。

  OnStart和OnEnd這兩個事件一般應用在虛擬社區中統計在線人數、修改用戶的在線離線狀態等。要具體定義這兩個事件,需要將代碼寫在Global.asa文件,并將該文件放在站點的根目錄下(缺省是\Inetpub\wwwroot\)。另外,Application和Session對象規定了在OnEnd事件里除了Application對象外其他ASP內置對象(Response、Request、Server、Session...)一概不能使用。以下舉一個虛擬社區統計在線人數的例子來說明如何使用這兩個事件。

  文件說明:

  global.asa 位于d:\Inetpub\wwwroot\目錄下

  default.asp 位于d:\Inetpub\wwwroot\目錄下,虛擬社區登錄頁面

  login.asp 位于d:\Inetpub\wwwroot\目錄下,用于檢測用戶輸入的用戶名及密碼

  index.asp 位于d:\Inetpub\wwwroot\目錄下,虛擬社區首頁

  bbs.mdb 位于d:\Inetpub\wwwroot\目錄下,存儲用戶信息的數據庫

  數據庫(ACCESS)結構:

   ===bbs表===

  id 用戶ID,長整型

  name 用戶名,文本型

  code 密碼,文本型

  online 在線狀態,是/否

 
  ===global.asa===

  <script LANGUAGE="VBScript" RUNAT="Server">

  Sub Application_OnStart

   application("online")=0

  End Sub

  sub Application_OnEnd

  nd Sub

  Sub Session_OnStart

  End Sub

  Sub Session_OnEnd

   if session.contents("pass") then '判斷是否為登錄用戶的Session_OnEnd

    application.lock

    application("online")=application("online")-1

    application.unlock

   end if

  End Sub

  </script>

  ==============

  ===login.asp===

   ......'密碼驗證,連接數據庫,檢測用戶輸入的用戶名及密碼是否正確

  if 密碼驗證通過 then

   session("name")=rs("name")

   session("id")=rs("id")

   session("pass")=true

  else

   rs.close

   conn.close

   response.write "密碼錯誤!"

   response.end

  end if

  application.lock

  application("online")=application("online")+1

  conn.Execute ("update bbs set online=1 where id="&session("id"))'將用戶的狀態設為在線

  application.unlock

  rs.close

  conn.close

  response.redirect "index.asp" '初始化數據后跳轉到社區首頁

  ===========

  在本例中,用application("online")變量記錄已經登錄社區的在線人數,因為一旦有用戶訪問服務器而不管用戶是否登錄,都會產生OnStart事件,所以不能在OnStart事件里使Applicaiton("online")加一。因為不管是否是登錄用戶的會話結束都會產生OnEnd事件(假如有訪客訪問了服務器但并不登錄社區,他的會話結束后也會產生OnEnd事件),所以在Session_OnEnd事件里用了句if語句來判斷是否為已登錄用戶的OnEnd事件,如果是才將在線人數減一。

  這只是一個統計在線人數的簡單例子,對于一個完整的虛擬社區來說,僅僅統計有多少人在線是不夠的,在本例中數據庫里有個online字段是用來記錄用戶的在線狀態,用戶登錄的時候,在login.asp里將online設為1,但用戶離線時并沒有將online設為0,要完善它,就要修改一下Session_OnEnd事件,在該事件里將online設為0。

  ===global.sas===

  <script LANGUAGE="VBScript" RUNAT="Server">

  Sub Application_OnStart

   application("online")=0

   set application("conn")=Server.CreateObject("ADODB.Connection")

   application("db")=Server.MapPath("\bbs.mdb") '此處最好使用絕對路徑\bbs.mdb,下文有詳細介紹

  End Sub

  sub Application_OnEnd

   set application("conn")=nothing

  End Sub

   Sub Session_OnStart

  End Sub

  Sub Session_OnEnd

   if session.contents("pass") then '判斷是否為登錄用戶的Session_OnEnd

     application("con").open ="driver={Microsoft Access Driver (*.mdb)};dbq="&application("db")

      application.lock

      application("online")=application("online")-1

      application("con").Execute ("update friends set online=0 where id="&session.contents("id"))

      application.unlock

      application("con").close

   end if

  End Sub

  </script>

  ==============

  至此,完整的代碼已經完成了。因為在Application和Session的OnEnd事件里不能使用Server對象,所以要將數據庫的連接及數據庫在服務器上的物理地址(d:\inetpub\wwwroot\bbs.mdb)存儲在application變量中,并在Application_OnStart事件中預先處理。同理,在Session_OnEnd事件中不能用session("pass")來代替session.contents("pass")(以下有詳盡說明)。

  四、本文實例中值得引起注意的兩點

  ⒈OnEnd事件里的session.contents

  剛開始接觸global.asa的朋友經常會將上面Session_OnEnd事件里的

  if session.contents("pass") then 寫成

  if session("pass") then,

  這樣的話系統不會提示錯誤,但是永遠也不會執行then后面的內容,這是因為在OnEnd事件里禁止使用Session對象,但是可以用Session對象的集合來調用session變量。因為IIS并沒提示任何錯誤信息,所以筆者曾經在這上面浪費了很多時間。在此希望大家引以為鑒!

  ⒉Application_OnStart事件里用Server.MapPath獲取數據庫的物理地址時應使用絕對地址為了說明這個問題,大家可以做個實驗:將上面Application_OnStart事件里的

  application("db")=Server.MapPath("\bbs.mdb")改為:

  application("db")=Server.MapPath("bbs.mdb")

然后在d:\inetpub\wwwroot\目錄下建立一個test子目錄,寫一個temp.asp在test目錄里。

  ====test.asp====

  <%response.write application("db")%>

  ================

再將temp.asp拷貝一份放在根目錄下(d:\inetpub\wwwroot\)。用記事本打開global.asa,再打開兩個瀏覽器,瀏覽器A輸入地址http://localhost/temp.asp,按回車,將在瀏覽器上輸出:

  d:\inetpub\wwwroot\bbs.mdb

然后,在記事本的窗口上點"文件"菜單,選"保存"(使global.asa的修改時間改變,從而使IIS重啟動所有服務),再在瀏覽器B輸入地址http://localhost/test/temp.asp,按回車,在瀏覽器上輸出的是:

  d:\inetpub\wwwroot\test\bbs.mdb

global.asa文件雖然是放在站點根目錄下,但是如果在server.mappath中使用的是相對地址,而觸發Application_OnStart事件的用戶第一次訪問的頁面又不是屬于根目錄的話,得到數據庫的物理地址將不會是期望的結果,希望大家要特別小心。

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

国产午夜成人免费看片无遮挡_日本免费xxxx色视频_免费人成网上在线观看_黄网址在线永久免费观看

  • <label id="pxtpz"><meter id="pxtpz"></meter></label>
      1. <span id="pxtpz"><optgroup id="pxtpz"></optgroup></span>

        亚洲图片欧美色图| 国产精品久久久久影院色老大| 欧美三级资源在线| 亚洲视频网在线直播| 成人av午夜影院| 亚洲色图制服诱惑 | 国产亚洲欧美日韩日本| 麻豆国产精品一区二区三区| 日韩视频国产视频| 国产精品1024久久| 国产精品美女一区二区三区| 成人avav在线| 亚洲香肠在线观看| 日韩欧美亚洲国产精品字幕久久久| 婷婷亚洲久悠悠色悠在线播放| 欧美日韩国产精品成人| 日本va欧美va精品| 国产亚洲欧美日韩在线一区| 91麻豆精东视频| 亚洲午夜久久久久久久久电影网 | 色婷婷综合久久久中文字幕| 又紧又大又爽精品一区二区| 欧美日韩精品一区二区三区| 奇米影视7777精品一区二区| 欧美韩日一区二区三区四区| 欧美日韩高清不卡| 高清国产一区二区三区| 亚洲一区二区视频在线| 久久综合九色综合欧美就去吻 | 精品国产一区二区精华| 高清国产一区二区三区| 亚洲国产精品久久一线不卡| 亚洲国产精品t66y| 欧美裸体一区二区三区| 成人国产在线观看| 久久国产三级精品| 亚洲午夜一区二区| 亚洲色图在线播放| 久久欧美中文字幕| 91精品欧美一区二区三区综合在| 成人精品一区二区三区四区 | 国产成人午夜电影网| 亚洲第四色夜色| 综合网在线视频| 26uuu国产一区二区三区| 欧美色图一区二区三区| 丁香婷婷综合色啪| 美腿丝袜亚洲三区| 午夜a成v人精品| 亚洲欧美成人一区二区三区| 久久一日本道色综合| 欧美日本在线播放| 在线观看国产91| 91极品视觉盛宴| 成人黄色电影在线| 成人av电影在线观看| 国产成人亚洲精品狼色在线| 国产乱子伦视频一区二区三区 | 日韩精品资源二区在线| 欧美日韩一区二区三区四区| 91丨porny丨户外露出| 成人亚洲一区二区一| 国产精品456| 成人午夜电影小说| 成人精品电影在线观看| 成人精品电影在线观看| 成人app在线观看| 成人理论电影网| 99在线精品视频| 99精品视频一区二区三区| 北条麻妃国产九九精品视频| 99这里都是精品| 色婷婷久久久久swag精品| 91色porny| 欧美精选一区二区| 欧美mv日韩mv国产网站| 久久久久久久网| 欧美韩国日本一区| 亚洲乱码中文字幕综合| 亚洲成人免费电影| 美国十次综合导航| 成人福利视频在线| 欧美性做爰猛烈叫床潮| 91麻豆精品久久久久蜜臀| 久久亚洲一级片| 国产精品久久久久久福利一牛影视| 中文在线一区二区| 亚洲一区免费在线观看| 奇米精品一区二区三区在线观看 | 久久99热99| 成人av网在线| 欧美日韩在线亚洲一区蜜芽| 日韩免费观看高清完整版| 国产日韩欧美一区二区三区乱码 | 国产毛片一区二区| 91首页免费视频| 精品剧情v国产在线观看在线| 国产精品久久久久一区| 午夜精品福利久久久| 国产一区视频导航| 色天使久久综合网天天| 91精品国产入口| 亚洲视频免费在线观看| 精品在线免费观看| 91成人看片片| 国产欧美日韩不卡免费| 午夜久久电影网| 97久久精品人人澡人人爽| 日韩精品一区二区三区三区免费| 亚洲视频你懂的| 国产麻豆视频一区二区| 欧美一区二区三区精品| 一区二区视频在线| 久久成人久久爱| 欧美日韩你懂得| 成人免费在线视频| 麻豆精品蜜桃视频网站| 欧美体内she精视频| 中文字幕不卡在线观看| 精品一区二区在线观看| 777午夜精品免费视频| 亚洲乱码日产精品bd| 成人自拍视频在线| 久久香蕉国产线看观看99| 日韩激情一二三区| 欧洲日韩一区二区三区| 亚洲日本成人在线观看| 99精品视频在线观看免费| 国产欧美日韩视频在线观看| 精品一区二区三区影院在线午夜| 在线观看91精品国产麻豆| 亚洲国产精品久久久久秋霞影院| 91亚洲国产成人精品一区二区三 | 精品国产91乱码一区二区三区 | 日本一区二区不卡视频| 老司机免费视频一区二区三区| 欧美日韩一级二级三级| 一个色综合网站| 在线欧美日韩国产| 一区二区三区免费看视频| 波多野结衣一区二区三区| 国产精品网曝门| 北条麻妃一区二区三区| 亚洲男人都懂的| 一本一本久久a久久精品综合麻豆| 亚洲色图丝袜美腿| 色噜噜狠狠色综合欧洲selulu| 一区二区视频在线看| 欧美日韩一区二区在线观看 | 日韩不卡一二三区| 欧美日韩aaaaaa| 日韩电影在线观看一区| 日韩精品资源二区在线| 国产精品伊人色| 国产精品日产欧美久久久久| 99精品视频在线播放观看| 亚洲综合一区二区三区| 欧美美女黄视频| 国产综合久久久久久久久久久久 | 日韩国产欧美在线观看| 欧美一区二区视频免费观看| 精品一区二区日韩| 国产精品国产馆在线真实露脸| 日本韩国一区二区| 蜜桃视频第一区免费观看| 国产亚洲精品福利| 色婷婷国产精品综合在线观看| 日韩高清国产一区在线| 国产亚洲精品aa| 欧美日韩国产首页| 国产做a爰片久久毛片| 一区二区三区四区视频精品免费| 7777女厕盗摄久久久| 国产大陆亚洲精品国产| 亚洲影视在线播放| 国产亚洲欧美一级| 91精品婷婷国产综合久久性色| 风间由美一区二区av101 | 日韩一区欧美小说| 日韩欧美国产三级电影视频| 99热这里都是精品| 免费观看成人av| **欧美大码日韩| 精品国产一区二区亚洲人成毛片 | 色综合天天视频在线观看| 日本成人在线不卡视频| 国产精品久久久久久亚洲毛片| 5月丁香婷婷综合| 色噜噜久久综合| 国产精品一二三| 日韩av午夜在线观看| 亚洲三级在线看| 久久久精品国产免费观看同学| 在线看国产一区二区| 国产成人超碰人人澡人人澡| 天天综合天天综合色| 玉米视频成人免费看| √…a在线天堂一区| 国产亚洲一区二区三区四区| 精品日韩av一区二区|