推薦:詳解Asp函數Cbool(string) 轉換為布林值Cbyte(string) 轉換為位元組類型的值Ccur(string) 轉換為貨幣類別值Cdate(string) 轉換為日前類型的值Cdbl(string) 轉換為雙精確度值Cint(string ) 轉換為整數值Clng(string) 轉換為長整數的值Csng(string) 轉換為單精確度的值Cstr(
ASP對象,在ASP有5個物件:Request、Response、Session、Application、Server。以下只針對本文能用到的物件屬性來說明,其他方面的屬性請參考相關資料。本文提供的方法的原理是:設定一個邏輯變數IsVoted,在投票之前驗證IsVoted的值,只有值為False時,才能投票,否則就認為已投過票。Application對像是處理某一特定ASP應用程式中所有使用者共享資訊的對象,也就是說Application對象就是所有連網機器上所有網頁所共享的對象。由Application物件定義和設定的變量,所有使用者的所有網頁均可存取。利用Application物件可以定義變數以及改變變數的值,其語法格式如下:Application(變數名稱)=表達式。在.asp檔中可透過Application(變數名稱)加以引用。 Application把變數的值保存在WebServer端。
Session物件用於單一使用者管理訊息,Session變數只在頁間呼叫(即在一個Session內)。 Session變數是私有的,一個Session中某個變數值的改變不影響另一個Session中同名變數的值。 Session物件也把變數值保存在伺服器端,但是各個Session保存的位置不同。因為Session是私有的,所以有多少Session物件就存在多少個IsVoted變量,這些變數之間沒有關係。
Cookies物件是不能單獨存在的,它依附於Request和Response對象,在使用時必須在Cookies前面加上Request或Response。就像Application和Session一樣,Cookies也能保存變數的值,但是Cookies只在瀏覽器客戶端保存變數的值。用Cookies定義的變數有一個屬性:可以設定Cookies變數的使用期限,而且一旦設定了使用期限,Cookies變數可以被從同一台機器登入的所有使用者所共享,我們可以利用Cookies的這個屬性設定間隔一定時間才能再投票。
Server物件主要完成一些需要WWW伺服器處理的工作,本文中我們主要利用Request.ServerVariables讀取Server的環境變數中客戶端的IP位址,並根據IP位址來設定相隔多久同一IP位址才能再次投票。
Global.asa檔案完成共享變數和檔案的定義及初始化任務。 Global.asa檔案必須位於ASP應用的根目錄下,一個ASP應用只能有一個Global.asa檔案。 Global.asa中含有Application_OnStart、Application_OnEnd、Session_OnStart、Session_OnEnd四個事件,我們在Application_OnStart、Session_OnStart事件中定義Application變數和Session變數以及進行初始化,這樣在以後的網頁中就可以讀取這些變數。 ASP在下列情況下讀取Global.asa內容:
1.WebServer啟動之後,第一次請求呼叫ASP應用中的任何.asp檔時;
2.不在Session狀態的使用者請求呼叫ASP應用的.asp檔。
方法一:利用Session對象
在Global.asa的Session_OnStart事件中設定邏輯變數IsVoted,初始值為FALSE(表示還沒投票),投票之後在.asp程式中把IsVoted的值改為TRUE(表示已投過票)。每次投票前都要判斷IsVoted的值。如果IsVoted的值為TRUE,就不能再投票;如果值為FALSE,則可以投票。
因為Session物件的使用必須與瀏覽器的Cookies功能相配合,所以在判斷IsVoted值之前,必須先判斷瀏覽器的Cookies功能是否開啟。如處於關閉狀態,則此種方法失效,所以在這種情況下必須給出提示訊息並用Response.End命令中斷.asp程式的執行,防止連續反覆投票。其流程如圖1:
其中判斷Cookies是否開啟的函數較為複雜,現給出函數實作程式碼(VBScript)。
分享:解析用ADO連接各種資料庫的程式碼簡單介紹一下幾種ADO連接方式:ODBCDSN,ODBCDSN-Less, OLEDBProvider,和MSRemoteProvider. 1。 ODBCDSN連接I.DSN oConn.OpenDSN=AdvWorks;_ UID=Admin;_ PWD=; 注意:從MDAC2.1開始就不能夠在使用這樣的方式了,就是只把DSN檔名放在ConnectString中
共3頁上一頁123下一頁