熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> SQL語言 >> 正文

ASP與數據庫運用:密碼驗證

2013-11-13 12:42:28  來源: SQL語言 
   Microsoft 的大作ASP(Active Server Pages)以其易學易用擴充性好功能多而強等優點正掀起一場新的web編程革命(從嚴格意義上講編寫asp並不是編程)它以令人吃驚的發展和普及速度大有取代由perl等語言編寫的CGI(Common Gateway Interface通用網關接口) 的勢頭基於web page方式的web管理模式已經成為潮流看看現在的網管們有誰不會asp的編寫呢?要管理?那你可能就要用到我這裡要說的密碼驗證簡單地說密碼驗證就是首先判斷你是不是有登錄權限如果有就繼續否則哼哼……什麼?你到現在還不知道ASP是什麼東東?該程序執行了非法操作即將被關閉如仍有問題請與程序供應商聯系系統語

  下面我們就來看看實現密碼驗證的ASP需要些什麼吧

   ASP運行環境

  Windows /單機平台PWS (Personal Web Server) windows NT /服務器平台IIS(Internet Information Server )Service Pack 及其以上版本)

  NT workstation 工作站平台PWS(Personal Web Server )NT workstation版及最新版的IE浏覽器

   用於制作ASP的軟件

  Windows FrontPage / Dreamweaver 如果這些軟件你都沒有那你就用windows 中的Notepad 當一次代碼編寫狂不過ASP中很多代碼仍是需要我們手工編寫大量代碼的用專用的網頁制作軟件只不過是偷一丁點懶而已

   用哪一種數據庫作為儲存用戶資料(用戶名及密碼)的數據庫呢?

  SQL ServerMicrosoft Access /等都可以本人建議你使用Access因為你可能對它比較熟悉一旦有問題解決起來比較容易更深的原因是Microsoft Access相對於其它非服務器等級的數據庫執行的效率要高得多

  好了廢話說了這麼多可能你早已經不耐煩了不過這對於一些ASP的初學者可能還是有幫助的對於這部分讀者你們可能還得要看看關於ASP方面的書籍或網站來增加你對ASP基本語法的了解

  讓我們一步一步來做這個密碼驗證吧我采用的是Windows + PWS 平台IE 浏覽器網頁制作軟件FrontPage Go!

  一創建用戶密碼數據庫

  先用Access建立一個用戶密碼數據庫建立字段名id和psd並添加值如:id的值我設為adminpsd的值為www當然你還可以繼續添加用戶id及psd完成後保存為psdmdb

  二編寫psdasp(用戶登錄界面頁完成驗證的功臣就是它了)及logasp(成功登錄後顯示的頁面)在編寫之前我們來分析一下常見的用戶登錄界面比如說你想收取基於web page方式免費郵件箱的登錄界面管理用戶登錄的文件名常常為log*開始登錄時是這個文件登錄完成後浏覽器的地址欄中還是顯示的這個文件名這是怎麼回事兒呢?用ASP的方法來講原來用戶登錄的文件被包含在登錄完成後的文件中以我現在要講的這個例子來說psdasp就是被包含在logasp中了用戶登錄時看到的文件名將是logasp而logasp要求系統先執行psdasp通過驗證之後才看到真正的logasp網頁對了!實際上密碼驗證的關鍵在psdasp在你讀完本文後你會深深體會這一點既然psdasp文件是關鍵那我們就先來看看psdasp是怎麼寫的

  運行FrontPage新建一個文件並保存為psdasp(在FrontPage 的保存類型中選取Active Server Pages)在FrontPage 左下角選取HTML先在它的頂部進行ASP源代碼的編寫內容如下(以下源代碼中凡出現……的均為注釋)

  <%

  function checkPwd(idpsd) 檢測用戶id及密碼

  dim connparamrs

  set conn=servercreateobject(adodbconnection) 創建數據庫連接對象conn

  param=driver={microsoft access driver (*mdb)} 指定數據庫驅動程序不可省略寫為access diver(*mdb)

  connopen param & ;dbq= & servermappath(psdmdb) 用指定的數據庫驅動程序打開數據庫並指定數據路徑

  sql=select*from psd where id= & id & and psd= & psd & 定義sql從數據庫中讀取id及psd的值本行中的第一個psd是指數據庫名以後的psd是指psdmdb中的psd字段

  set rs=connexecute(sql) 打開數據庫

  if rseof then

  checkpwd=false

  else

  checkpwd=true

  end if

  end function 以上幾句判斷是否已經讀完數據庫中的記錄如果沒有就向後讀如果已經完成則驗證用戶名及密碼如果驗證通過則為true反之為flase

  %>

  <%

  if isEmpty(session(passed)) then session(passed)=false 判斷用戶輸入信息

  id=request(id) 獲取用戶id(用戶名)

  psd=request(psd) 獲取用戶psd(密碼)

  if id= or psd= then

  responsewrite請輸入您的登錄名及密碼 如果用戶沒有輸入完整的信息返回出錯信息

  elseif not checkpwd(idpsd) then

  responsewrite用戶名或密碼錯誤!<br>請檢查你的用戶名及密碼然後再試一次! 如果用戶已經輸入完整信息但輸入錯誤也返回出錯信息

  else session(passed)=true

  end if

  if not session(passed) then%> 用戶輸入的信息完全正確並驗證通過以下開始編寫html代碼做一個用戶登錄界面

  <html>

  <head>

  <meta httpequiv=ContentType content=text/html; charset=gb>

  <title>請您輸入您的用戶名及密碼!</title>

  </head>

  <body bgcolor=# text=#FFFFFF>

  <p align=center> 

  <p align=center> </p>

  <p align=center><b><font face=黑體 size=>用戶登錄首頁</font></b></p>

  <p align=center> </p>

  <form method=POST action=<%=requestserverVariables(psdmdb)%>>

  <table border= width=% cellspacing= cellpadding=>

  <tr>

  <td width=% align=right>用戶名:</td>

  <td width=%><input type=text name=id size= value=<%=id%>></td>

  </tr>

  <tr>

  <td width=% align=right>  密 碼</td>

  <td width=%><input type=password name=psd size= value=<%=psd%>></td>

  </tr>

  <tr>

  <td width=%> </td>

  <td width=%> </td>

  </tr>

  </table>

  <p align=center><input type=submit value=提交 name=B><input type=reset value=清除 name=B></p>

  </form>

  <%responseend

  end if %> 驗證過程結束進入加密網頁

  </body>

  </html>

  完成了psdasp的編寫可能你早已經迫不及待地想知道logasp怎麼編寫了吧讓我們繼續吧!

  Logasp的內容

  <!#include file=psdasp> 在logasp源代碼中的頂部輸入這句作用就是在系統執行logasp之前先執行psdasp啦!

  <html>

  <head>

  <title>用戶驗證通過您已經成功登錄系統</title>

  </head>

  <body><center><p><p><p><p>用戶驗證通過您已經成功登錄!<br>

  現在你可以進行你想要的操作了如果你有什麼問題請來信Email<a href=mailto:kanwo@net?subject=問你幾個關於密碼驗證的問題>kanwo@net</a></center>

  </body>

  </html>

  呵呵……手寫了這麼多還受得了吧你在編寫完成之後可以移植到其它平台上比如Windows NT最後將你做的這兩個asp文件及psdmdb數據庫放在同一個目錄下(該目錄必須在PWS或IIS中有www服務)比如:c:\inetpub\wwwroot\然後在確保你的PWS或IIS在運行的情況下在你們IE浏覽器的地址欄中輸入http:///logasp看看會有什麼!(如果你在登錄過程中聽到你的硬盤在響可別嚇著了喲!)


From:http://tw.wingwit.com/Article/program/SQL/201311/16424.html
  • 上一篇文章:

  • 下一篇文章:
  • 推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.