本文給大家介紹ASP實現給網頁添加驗證碼的功能,您可以將這個功能添加在註冊表單、網頁評論等中,下邊來看實現的方法:
第一步:下載本文下的附件。該壓縮包為 imgchk 檔案夾 ,其中有三個檔案:validatecode.asp,validatebody.fixvalidatehead.fix
主要即是為產生 驗證碼 服務的。
將解壓檔案夾直接釋放在需要在某頁添加驗證碼的同目錄下,(比如 addnew.asp 需要添加驗證碼,該檔案在 cnbruce 檔案夾下,則將 imgchk 檔案夾同時釋放到 cnbruce 檔案夾 中)
第二步:添加顯示驗證碼和輸入框
在需要添加驗證碼的頁面中添加如下代碼:
第三步:記錄接受頁面處理
在步驟2中,一定會將記錄提交到某個頁面處理,那麼在該處理頁中添加如下代碼:
If Trim(Request.Form("validatecode"))=Empty Or Trim(Session("cnbruce.com_ValidateCode"))<>Trim(Request.Form("validatecode")) Then
response.write("請注意正確輸入驗證碼")
response.end
end if
驗證碼原理:
在產生驗證碼圖片的時候,同時產生了一個Session,其值就是驗證碼圖片中的數字值。
同時,提供輸入框讓使用者輸入,提交輸入值後,與已有的Session值進行比較,根據判斷結果做相應判斷。
如果需要修改Session的name,只有兩個地方改動:
a:您下載的imgchk檔案夾中的validatecode.asp,其中涉及到cnbruce.com的該成您的;
b:就是剛才的步驟3中Trim(Session("cnbruce.com_ValidateCode"))<>Trim(Request.Form("validatecode")) 中的cnbruce.com換成a所設定的。
另外===================================================
顯示校正碼的補丁(有些朋友顯示不出驗證碼,這裡看看)
用下面內容建立檔案SP2.reg(用記事本就可以,儲存時選“另存新檔”)
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINESOFTWAREMicrosoftInternet ExplorerSecurity]
"BlockXBM"=dword:00000000
雙擊匯入註冊表中,然後重啟機器。
好了至此為止,驗證碼已經加好了,可以試試多註冊幾個帳號實驗下,唯一不爽的就是如果不輸入驗證碼點確定的話會自動轉入另外一個頁面,字型好大好醜,有空閑功夫的人可以改成彈出提示,例如:
Response.Write("")