?? 16-2-4.cfm.htm
字號:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>Sessions事件</title>
<meta name="GENERATOR" content="Microsoft FrontPage 3.0">
</head>
<body>
<b><font FACE="宋體">
<p ALIGN="JUSTIFY">Sessions</font>事件</p>
</b><font FACE="宋體" SIZE="3">
<p ALIGN="JUSTIFY"></font><font SIZE="3">和其他對象不同的是,</font><font
FACE="宋體" SIZE="3">Session</font><font SIZE="3">對象中有事件(</font><font
FACE="宋體" SIZE="3">Event</font><font SIZE="3">)。一共兩種:</font><font
FACE="宋體" SIZE="3">Session_OnStart</font><font SIZE="3">事件,當一個</font><font
FACE="宋體" SIZE="3">Session</font><font SIZE="3">開始時被觸發。還有</font><font
FACE="宋體" SIZE="3">Session_OnEnd</font><font SIZE="3">事件,當一個</font><font
FACE="宋體" SIZE="3">Session</font><font SIZE="3">結束時被觸發。在一個腳本中你可以和其中一個并且只能和其中一個事件關聯。</p>
</font><font FACE="宋體" SIZE="3">
<p ALIGN="JUSTIFY"></font><font SIZE="3">在事件觸發時下面這些腳本的語句被執行。這兩個腳本位于特定的文件</font><font
FACE="宋體" SIZE="3">Global.asa</font><font SIZE="3">。這個文件位于你的網站應用的根目錄。它包括了一些通用程序段和你的網站應用。</font><font
FACE="宋體" SIZE="3">Global.asa</font><font SIZE="3">文件有如下結構:</p>
</font><font FACE="宋體" SIZE="3">
<p ALIGN="JUSTIFY"><SCRIPT LANGUAGE=VBScript RUNAT=Server></p>
<p ALIGN="JUSTIFY">SUB Application_OnStart</p>
<p ALIGN="JUSTIFY">END SUB</p>
<p ALIGN="JUSTIFY"></SCRIPT></p>
<p ALIGN="JUSTIFY"><SCRIPT LANGUAGE=VBScript RUNAT=Server></p>
<p ALIGN="JUSTIFY">SUB Application_OnEnd</p>
<p ALIGN="JUSTIFY">END SUB</p>
<p ALIGN="JUSTIFY"></SCRIPT></p>
<p ALIGN="JUSTIFY"><SCRIPT LANGUAGE=VBScript RUNAT=Server></p>
<p ALIGN="JUSTIFY">SUB Session_OnStart</p>
<p ALIGN="JUSTIFY">END SUB</p>
<p ALIGN="JUSTIFY"></SCRIPT></p>
<p ALIGN="JUSTIFY"><SCRIPT LANGUAGE=VBScript RUNAT=Server></p>
<p ALIGN="JUSTIFY">SUB Session_OnEnd</p>
<p ALIGN="JUSTIFY">END SUB</p>
<p ALIGN="JUSTIFY"></SCRIPT></p>
</font><font SIZE="3"><b>
<p ALIGN="JUSTIFY">注意</p>
</b></font><font FACE="宋體" SIZE="3">
<p ALIGN="JUSTIFY"></font><font SIZE="3">下一章提供更加詳細的關于</font><font
FACE="宋體" SIZE="3">Global.asa</font><font SIZE="3">文件的內容</p>
</font><font FACE="宋體" SIZE="3">
<p ALIGN="JUSTIFY">Global.asa</font><font SIZE="3">包括四個腳本。這里面有一個是根據</font><font
FACE="宋體" SIZE="3">Session_OnStart</font><font SIZE="3">觸發,另一個是根據</font><font
FACE="宋體" SIZE="3">Session_OnEnd</font><font SIZE="3">觸發(下一章介紹剩下的另外兩個腳本)</p>
</font><font FACE="宋體" SIZE="3">
<p ALIGN="JUSTIFY"></font><font SIZE="3">請注意</font><font FACE="宋體" SIZE="3">Global.asa</font><font
SIZE="3">使用了微軟的</font><font FACE="宋體" SIZE="3">HTML</font><font SIZE="3">拓展</font><font
FACE="宋體" SIZE="3"><SCRIPT></font><font SIZE="3">標記語法來限制腳本,這也就是說,你必須用</font><font
FACE="宋體" SIZE="3"><SCRIPT></font><font SIZE="3">標記來引用這兩個事件而不能用</font><font
FACE="宋體" SIZE="3"><%</font><font SIZE="3">和</font><font FACE="宋體" SIZE="3">%></font><font
SIZE="3">符號引用。例子中</font><font FACE="宋體" SIZE="3">Global.asa</font><font
SIZE="3">使用的是</font><font FACE="宋體" SIZE="3">VBScript</font><font SIZE="3">,但是你也可以使用其他腳本語言。</p>
</font><font FACE="宋體" SIZE="3">
<p ALIGN="JUSTIFY"></font><font SIZE="3">在</font><font FACE="宋體" SIZE="3">Global.asa</font><font
SIZE="3">中不能有任何輸出語句,無論是</font><font FACE="宋體" SIZE="3">HTML</font><font
SIZE="3">的語法還是</font><font FACE="宋體" SIZE="3">Response.Write()</font><font
SIZE="3">方法都是不行的,</font><font FACE="宋體" SIZE="3">Global.asa</font><font
SIZE="3">是任何情況下也不能進行顯示的。</p>
</font><font FACE="宋體" SIZE="3">
<p ALIGN="JUSTIFY"></font><font SIZE="3">你只需要在</font><font FACE="宋體"
SIZE="3">Global.asa</font><font SIZE="3">中添加一些你希望執行的腳本,那么只要</font><font
FACE="宋體" SIZE="3">Session</font><font SIZE="3">一創建,這些腳本就會自動執行,例如下例:</p>
</font><font FACE="宋體" SIZE="3">
<p ALIGN="JUSTIFY"><SCRIPT LANGUAGE=VBScipt RUNAT=Server></p>
<p ALIGN="JUSTIFY">SUB Session_OnStart</p>
<p ALIGN="JUSTIFY">Session(</font><font SIZE="3">“</font><font FACE="宋體" SIZE="3">Username</font><font
SIZE="3">”</font><font FACE="宋體" SIZE="3">)=</font><font SIZE="3">“</font><font
FACE="宋體" SIZE="3">Unknow</font><font SIZE="3">”</font><font FACE="Tms Rmn" SIZE="3"></p>
</font><font FACE="宋體" SIZE="3">
<p ALIGN="JUSTIFY">Session(</font><font SIZE="3">“</font><font FACE="宋體" SIZE="3">Userpassword</font><font
SIZE="3">”</font><font FACE="宋體" SIZE="3">)=</font><font SIZE="3">“</font><font
FACE="宋體" SIZE="3">Unknow</font><font SIZE="3">”</font><font FACE="Tms Rmn" SIZE="3"></p>
</font><font FACE="宋體" SIZE="3">
<p ALIGN="JUSTIFY">END SUB</p>
<p ALIGN="JUSTIFY"></SCRIPT></p>
<p ALIGN="JUSTIFY"></font><font SIZE="3">這個腳本將”</font><font FACE="宋體"
SIZE="3">Unkonw</font><font SIZE="3">”值賦給了</font><font FACE="宋體" SIZE="3">Username</font><font
SIZE="3">和</font><font FACE="宋體" SIZE="3">UserPassword</font><font SIZE="3">變量。這個例子將在任何一個</font><font
FACE="宋體" SIZE="3">Session </font><font SIZE="3">創建的時候就執行。</p>
</font><font FACE="宋體" SIZE="3">
<p ALIGN="JUSTIFY">Session_Onstart</font><font SIZE="3">腳本可以用于很多種目的。例如,你希望訪問者必須瀏覽某一個主頁,下面的例子就在用戶進程開始時進行了這種引導,那么這里面使用</font><font
FACE="宋體" SIZE="3">Response.redirect</font><font SIZE="3">方法。下面是這個例子:</p>
</font><font FACE="宋體" SIZE="3">
<p ALIGN="JUSTIFY"><Script Language=VBScript RUNAT=Server></p>
<p ALIGN="JUSTIFY">SUB Session_OnStart</p>
<p ALIGN="JUSTIFY">MyHomepage=</font><font SIZE="3">“</font><font FACE="宋體" SIZE="3">/homepage.asp</font><font
SIZE="3">”</font><font FACE="Tms Rmn" SIZE="3"></p>
</font><font FACE="宋體" SIZE="3">
<p ALIGN="JUSTIFY">RequestPage=Request.ServerVariables(</font><font SIZE="3">“</font><font
FACE="宋體" SIZE="3">SCRIPT_NAME</font><font SIZE="3">”</font><font FACE="宋體"
SIZE="3">)</p>
<p ALIGN="JUSTIFY">IF NOT (STRCOMP(MyHomePage,RequestPage,vbTextCompare)=0) THEN</p>
<p ALIGN="JUSTIFY">Response.Redirect MyHomePage</p>
<p ALIGN="JUSTIFY">END IF</p>
<p ALIGN="JUSTIFY">END SUB</p>
<p ALIGN="JUSTIFY"></SCRIPT></p>
<p ALIGN="JUSTIFY"></font><font SIZE="3">在這個腳本中,用戶請求和主頁路徑進行比較,如果不是一樣的,用戶就被自動引導到該主頁。</p>
</font><font FACE="宋體" SIZE="3">
<p ALIGN="JUSTIFY"></font><font SIZE="3">下面的例子將</font><font FACE="宋體"
SIZE="3">Session_OnStart</font><font SIZE="3">和</font><font FACE="宋體" SIZE="3">Session_OnEnd</font><font
SIZE="3">都進行了使用:</p>
</font><font FACE="宋體" SIZE="3">
<p ALIGN="JUSTIFY"><SCRIPT LANGUAGE=VBScript RUNAT=Server></p>
<p ALIGN="JUSTIFY">SUB Session_OnStart</p>
<p ALIGN="JUSTIFY">Response.AppendToLog Session.SessionID&</font><font SIZE="3">”</font><font
FACE="宋體" SIZE="3"> Starting</font><font SIZE="3">”</font><font FACE="Tms Rmn"
SIZE="3"></p>
</font><font FACE="宋體" SIZE="3">
<p ALIGN="JUSTIFY">END SUB</p>
<p ALIGN="JUSTIFY"></SCRIPT></p>
<p ALIGN="JUSTIFY"><SCRIPT LANGUAGE=VBScript RUNAT=Server></p>
<p ALIGN="JUSTIFY">SUB Session_Onend</p>
<p ALIGN="JUSTIFY">Response.AppendToLog Session.SessionID&</font><font SIZE="3">”</font><font
FACE="宋體" SIZE="3"> Ending</font><font SIZE="3">”</font><font FACE="Tms Rmn"
SIZE="3"></p>
</font><font FACE="宋體" SIZE="3">
<p ALIGN="JUSTIFY">END SUB</p>
<p ALIGN="JUSTIFY"></SCRIPT></p>
<p ALIGN="JUSTIFY"></font><font SIZE="3">這個例子中,當用戶的</font><font
FACE="宋體" SIZE="3">Session</font><font SIZE="3">開始時,日志文件中記錄了該用戶的</font><font
FACE="宋體" SIZE="3">Session</font><font SIZE="3">和</font><font FACE="宋體" SIZE="3">Starting</font><font
SIZE="3">信息;當用戶的</font><font FACE="宋體" SIZE="3">Session</font><font
SIZE="3">結束時,日志文件就記錄了該用戶的</font><font FACE="宋體"
SIZE="3">Session</font><font SIZE="3">結束的信息。這樣,你就可以作很多種判斷統計,例如說每個人的停留時間、站上現在有多少人等等。這樣對于站點設計和定位就很有助益。</p>
</font>
</body>
</html>
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -