本文給大家介紹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("")