中文字幕二区_国产精品免费在线观看_黄色网站观看_人人草人人澡_日本真实娇小xxxx

您的位置: 首頁 > 技術文檔 > 網絡編程 > ASP編程入門進階
ASP 指南 回到列表 asp 中對 ip 進行過濾限制函數(shù)
 ASP編程入門進階

作者:cnbruce 時間: 2004-03-13 文檔類型:原創(chuàng) 來自:藍色理想

第 1 頁 ASP編程入門進階(一):安裝服務器
第 2 頁 ASP編程入門進階(二):認識表單
第 3 頁 ASP編程入門進階(三):接觸腳本程序
第 4 頁 ASP編程入門進階(四):內置對象Request
第 5 頁 ASP編程入門進階(五):內置對象Response
第 6 頁 ASP編程入門進階(六):Cookies講座
第 7 頁 ASP編程入門進階(七):一些簡單的ASP練習
第 8 頁 ASP編程入門進階(八):內置對象Session

ASP對象中除了用于發(fā)送(Response)、接收和處理數(shù)據(jù)(requeest)、服務器訪問(Server)的對象外,還有一些非常實用的標記Active Server應用程序(Application)和單個用戶信息(Session)的對象。

Session對象
該對象在ASP使用中占相當大的比例。由于網頁是一種無狀態(tài)程序,無法得知用戶瀏覽狀態(tài)。在ASP中,通過Session對象來記錄使用者私有的數(shù)據(jù)變量,以作為用戶再次對服務器提出要求時做確認,用戶在程序的Web頁面之間跳轉時,存在Session對象中的變量將不會消失。

這些真的是很重要的功能,尤其是有會員的系統(tǒng)必須要用到的。像是會員的登入賬號、時間、狀態(tài)以及許許多多該記錄的實時數(shù)據(jù)(如購物系統(tǒng)記錄使用者的購物籃內的商品),這些信息屬于各使用者私人所需要,通常開發(fā)者都是使用 Session 記錄處理。

在ASP中的Session是使用Cookies構成,服務器將所有的Session內記錄的數(shù)據(jù),以Cookies的方式傳至用戶的瀏覽器。通常一般瀏覽器會將這些Cookies存起來,每當使用者點選連結,再次與服務器做聯(lián)機時,瀏覽器就會把這些Cookies傳回Server供做處理:這即是Session的運作原理。由此可知會話狀態(tài)Session僅在支持cookie的瀏覽器中保留,如果客戶關閉了Cookie 選項Session也就不能發(fā)揮作用了。

一、Session.SessionID
SessionID 屬性返回用戶的會話標識。在創(chuàng)建會話時,服務器會為每一個會話生成一個單獨的標識,會話標識以長整形數(shù)據(jù)類型返回。在很多情況下 SessionID 可以用于 WEB 頁面注冊統(tǒng)計。

利用該屬性可以解決一種對用戶的控制問題。該問題的主要功能就是,針對某個網站的一個模塊,當一個會員登錄后正在看此模塊時,另一個人用同樣的會員名登錄,就不能瀏覽這個模塊:也就是說一個會員名同時只能一個人瀏覽此模塊。

通過用會員名(假設為UserID,唯一)和SessionID來實現(xiàn)了控制。當會員登錄時,給這個會員一個Session記錄登錄狀態(tài)如:Session("Status")="Logged",同時把這個會員的Session.SessionID寫入數(shù)據(jù)庫。當他要瀏覽此模塊時,先判斷其是否登錄,若已經登錄再判斷它的SessionID是否與數(shù)據(jù)庫記錄的相同,如果不同則不能訪問。

這樣,當另一個用戶用相同的會員名登錄時,那么數(shù)據(jù)庫中記錄的就是新的SessionID,前者訪問此模塊時就不能通過檢查。這就實現(xiàn)了一個會員名同時只能一個人瀏覽某個模塊。這個功能在一些收費網站有很有特別作用,它防止了一個會員名給多個人瀏覽的問題,為公司保障了利益。


<%=Session.SessionId%>
是單獨生成的唯一ID標識,可刷新調試。

二、Session.TimeOut
該屬性設置的Session的最大間隔時間。間隔時間是指客戶器端從最近一次向Web服務器提出要求,到下一次向Web服務器提出要求的時間?梢岳斫鉃椋喝绻脩粼谠摮瑫r時限之內不刷新或請求網頁,則該會話將終止。Timeout 屬性是以分鐘為單位,為該應用程序的Session對象指定超時時限的,一般默認為20分鐘。這在網吧等公共場所,登錄個人信息頁而忘記關閉窗口時,顯得比較重要(至少可以把時間設短些)。


<%Session.TimeOut=10%>

以上SessionId、TimeOut屬于Session對象的兩個屬性,下面看該對象的一個方法Abandon

三、Session.Abandon
該方法是Session對象的唯一方法,可以清除Session對象,用來消除用戶的Session對象并釋放其所占的資源。當然你如果沒有明確調用Abandon方法,一旦會話超時,服務器也會將刪除這些對象并釋放資源。
下面就用兩個頁的程序來認識Session對象以及Abandon方法的利用。

1,login.asp


<%
'是提取url中變量loginout的值是否為true,若為真,就執(zhí)行Session.Abandon()。
if Request.QueryString("loginout")="true" then
      Session.Abandon()
end if 

'只有在當點擊了submit按鈕的前提下,再來判斷提取的東西都不為空,則建立Session對象。
submitname=request.form("submit1")
if submitname="submit" then
    if Request.Form("name")<>"" and Request.Form("pwd")<>"" then
        Session("name")=Request.Form("name")
        Session("pw")=Request.Form("pwd")
    end if
end if
%>
<%
'如果Session("name")不為空,則顯示Session("name")的值,并且做一個到info.asp的鏈接。
if Session("name")<>"" then
response.write("你的name值是:"&Session("name"))
response.write("<br><a href='info.asp'>顯示你的資料</a>")
else

'否則,即Session("name")為空不存在,則顯示表單用以輸入建立Session的平臺。
%>
<form action="login.asp" method="post">
姓名:<input type="text"     name="name"><br>
密碼:<input type="password" name="pwd"><br>
<input type="submit" value="submit" name="submit1">
</form>
<!--同樣做了一個到info.asp的鏈接。-->
<a href="info.asp">顯示你的資料</a>
<%end if%>


注意Session("name")為空和不為空的時候,都做了一個到info.asp的鏈接,具體調試結果如何,再來看info.asp的內容。

2,info.asp


<%
'如果session對象值為空則跳轉到login.asp
if session("name")="" then
    Response.Redirect("login.asp")
'否則就顯示個人信息
else
    Response.Write("你的姓名:"&session("name")&"<br>")
    Response.Write("你的密碼:"&session("pw")&"<br>")
end if
%>
<a href="login.asp">返回</a>
<a href="login.asp?loginout=true">退出</a>


可以看出來,info.asp頁面內容的顯示其實是需要條件的。那就是必須得有一個session值的存在,這樣才可以顯示具體的信息。這在登錄系統(tǒng)中運用得比較多。

你可以把login.asp想象成一個登錄窗口,當然我的這個比較簡單(只要輸入用名和密碼就生產Session了),實際情況是:判斷輸入的用名和密碼是否和數(shù)據(jù)庫中的用名和密碼吻合,如果正確吻合才生成Session的。然info.asp頁面的作用剛好可以做為一權限頁面,因為進入該頁需要Session,而Session的產生是確保用名密碼正確的。

所以當一開始出現(xiàn)表單窗口時,你點login.asp鏈接是打不開的,只有當提交了表單生成了Session后才能進入。這正是登錄系統(tǒng)的精髓所在,Do You Know?:)

四、Session_OnStart
Session_OnStart屬于Session對象的一類事件。它是在服務器創(chuàng)建新會話時發(fā)生的。服務器在執(zhí)行請求的頁之前先處理該腳本。Session_OnStart 事件是設置會話期變量的最佳時機,因為在訪問任何頁之前都會先設置它們。

對象的例程每一次啟動時觸發(fā)Session_OnStart事件,然后運行Session_Onstart事件的處理過程。也就是說,當服務器接收到應用程序中的URL的HTTP請求時,觸發(fā)此事件,并建立一個Session對象。

當然說到Session_OnStart事件就不能不談到一個文件Global.asa(P.S:我打算把該文件和Chat程序放在一起說的,所以現(xiàn)在先不作過多解釋)
具體用法先透露,寫在Global.asa文件內部


<SCRIPT RUNAT=Server Language=VBScript>
.......
Sub Session_OnStart
.......
End Sub
.......
</SCRIPT>


五、Session_OnEnd
一看也就知道是Session對象的另一類事件了。當調用Session.Abandon方法時或者在TimeOut的時間內沒有刷新,這會觸發(fā)Session_OnEnd事件,然后執(zhí)行里面的腳本。同樣具體用法在后面將寫的Global.asa文件專題中詳細介紹到,簡單語法如下:


<SCRIPT RUNAT=Server Language=VBScript>
.......
Sub Session_OnEnd
.......
End Sub
.......
</SCRIPT>



最后,不知道大家有沒有玩過這樣的一個程序:很令人討厭的,讓你永遠關不掉的程序頁面。
只做程序調試,不要去作弄別人。

以下文件保存為bug.html

運行代碼框

[Ctrl+A 全部選擇 提示:你可先修改部分代碼,再按運行]

發(fā)現(xiàn)該文件關不了了?(當然你要關閉,把源代碼修改下)
那現(xiàn)在的要求是:計算關閉的次數(shù),如果超過多少次就可以自行關閉,那下面就采用到session

以下文件保存為bug.asp


<%if session("num") < 2 then%>
<body onunload=javascript:window.open("bug.asp")>
<%session("num")=session("num")+1%>
<%else%>
<script>
self.close()
</script>
<%end if%>



呵呵,當你關閉三次以后,窗口就再也不彈出了。了解吧:)
以上就是對Session對象的系統(tǒng)學習。

出處:藍色理想
責任編輯:cnbruce

上一頁 ASP編程入門進階(七):一些簡單的ASP練習 下一頁

◎進入論壇網絡編程版塊參加討論

相關文章 更多相關鏈接
[ASP]利用 xmlhttp 分塊上傳文件
ASP 中健壯的頁結構的異常處理
改進 ASP 的字符串處理性能
ASP 指南
UBB 轉換函數(shù)演示
作者文章 更多作者文章
Dreamweaver 限制訪問的BUG
DW2004 中文亂碼解決方案
ASP應用之模板采用
ASP TO HTML WITH TEMPLATE
處理較長文章,添加 …… 效果
關鍵字搜索 常規(guī)搜索 推薦文檔
熱門搜索:CSS Fireworks 設計比賽 網頁制作 web標準 用戶體驗 UE photoshop Dreamweaver Studio8 Flash 手繪 CG
站點最新 站點最新列表
周大福“敬•自然”設計大賽開啟
國際體驗設計大會7月將在京舉行
中國國防科技信息中心標志征集
云計算如何讓安全問題可控
云計算是多數(shù)企業(yè)唯一擁抱互聯(lián)網的機會
阿里行云
云手機年終巨獻,送禮標配299起
阿里巴巴CTO王堅的"云和互聯(lián)網觀"
1499元買真八核 云OS雙蛋大促
首屆COCO桌面手機主題設計大賽
欄目最新 欄目最新列表
淺談JavaScript編程語言的編碼規(guī)范
如何在illustrator中繪制臺歷
Ps簡單繪制一個可愛的鉛筆圖標
數(shù)據(jù)同步算法研究
用ps作簡單的作品展示頁面
CSS定位機制之一:普通流
25個最佳最閃亮的Eclipse開發(fā)項目
Illustrator中制作針線縫制文字效果
Photoshop制作印刷凹凸字體
VS2010中創(chuàng)建自定義SQL Rule
>> 分頁 首頁 前頁 后頁 尾頁 頁次:8/81個記錄/頁 轉到 頁 共8個記錄

藍色理想版權申明:除部分特別聲明不要轉載,或者授權我站獨家播發(fā)的文章外,大家可以自由轉載我站點的原創(chuàng)文章,但原作者和來自我站的鏈接必須保留(非我站原創(chuàng)的,按照原來自一節(jié),自行鏈接)。文章版權歸我站和作者共有。

轉載要求:轉載之圖片、文件,鏈接請不要盜鏈到本站,且不準打上各自站點的水印,亦不能抹去我站點水印。

特別注意:本站所提供的攝影照片,插畫,設計作品,如需使用,請與原作者聯(lián)系,版權歸原作者所有,文章若有侵犯作者版權,請與我們聯(lián)系,我們將立即刪除修改。

您的評論
用戶名:  口令:
說明:輸入正確的用戶名和密碼才能參與評論。如果您不是本站會員,你可以注冊 為本站會員。
注意:文章中的鏈接、內容等需要修改的錯誤,請用報告錯誤,以利文檔及時修改。
不評分 1 2 3 4 5
注意:請不要在評論中含與內容無關的廣告鏈接,違者封ID
請您注意:
·不良評論請用報告管理員,以利管理員及時刪除。
·尊重網上道德,遵守中華人民共和國的各項有關法律法規(guī)
·承擔一切因您的行為而直接或間接導致的民事或刑事法律責任
·本站評論管理人員有權保留或刪除其管轄評論中的任意內容
·您在本站發(fā)表的作品,本站有權在網站內轉載或引用
·參與本評論即表明您已經閱讀并接受上述條款
推薦文檔 | 打印文檔 | 評論文檔 | 報告錯誤  
專業(yè)書推薦 更多內容
網站可用性測試及優(yōu)化指南
《寫給大家看的色彩書1》
《跟我去香港》
眾妙之門—網站UI 設計之道
《Flex 4.0 RIA開發(fā)寶典》
《贏在設計》
犀利開發(fā)—jQuery內核詳解與實踐
作品集 更多內容

雜⑦雜⑧ Gold NORMANA V2