利用ASP給首頁加密 我們的目的是: *驗證使用者是否經過授權並根據結果設定相應的驗證狀態 *如果使用者是經過授權的,驗證狀態置1 *如果使用者是沒有授權的,驗證狀態置0 下面顯示的是verify.asp頁的代碼,你可以根據實際情況作一些相應的修改。 < % ’ Create a command object. This object serves to run our queries Set Cm = Server.CreateObject(“ADODB.Command”) ’ Specify the system DSN path Cm.ActiveConnection =“LoginDSN” ’ Now it’s time for the query. We need to check the user information ’ against the table tUsers Cm.CommandText=“SELECT * FROM tUsers WHERE ”& _ “UserName=’”& Request.Form(“UserName”) &“’ AND ”& _ “UserPassword=’” & Request.Form(“UserPassword”) & “’” ’ Set the query type. 1 means it is a SQL statement Cm.CommandType = 1 ’ Retrieve the results in a recordset object Set Rs = Cm.Execute ’ We now check if the user is valid. If user is valid, the recordset MUST ’ haverecord. Otherwise it is empty. If user exists, we set authentication ’ status to 1 and send the user to appropriate page, say welcome.asp. ’ Else send the user back to login.asp If Rs.EOF Then Session(“Authenticated”) = 0 Response.Redirect (“login.asp”) Else Session(“Authenticated”) = 1 Response.Redirect (“welcome.asp”) End If % > 步驟6:檢查驗證狀態 這是我們系統中的一個重要的部分。我們要在每個受到保護的頁面上,檢查使用者的驗證狀態。這個做起來很簡單。只要檢查使用者的驗證狀態是否為1即可,如果不是1則把使用者重新送到login.asp頁。範例程式碼如下 < % If Session(“Authenticated”) = 0 Then Response.Redirect (“Login.asp”) End If % > 你還可以用另一種方法。把上面的代碼拷貝到一個叫check.inc的檔案中,再把下面這行程式碼封裝含到需要保護的頁面的頭部。 如果你有很多頁面需要保護,你只需把這行代碼寫到每一個需要保護的網頁的頭部即可。 上述6個步驟將協助你建立一個簡單的使用者登入系統。但請記住這個系統只是保護一個虛擬目錄,而不是整個的網站。你需要為每個你想要保護的虛擬路徑建立一個。 |