ASP生成XBM圖可用作騐証碼
這個程序主要是先生成一個隨機數,然後根據生成的隨機數經過變換後作爲XBM圖片的內容,最後顯示這個圖片. 騐証時中要獲取輸入的數字和Session("validatecode")比較,如果相等則通過騐証(還要注意一下相比較的兩數據的類型保持一致)。
如何顯示生成的圖片呢?
關於XBM圖的格式信息,看這裡
http://www.zdnet.com.cn/developer/tech/story/0,2000081602,39134972,00.htm
xbm.asp的代碼如下
程序代碼:
<%
'開啓緩沖
Response.Buffer = True
With Response
.Expires = -1
.AddHeader"Pragma","no-cache"
.AddHeader"cache-ctrol","no-cache"
End With
Dim num
Randomize
num = Int(7999 * Rnd 2000)
Session("validateCode") = num
Dim Image
Dim Width, Height
Dim digtal
Dim Length
Dim sort
Dim hc
Length = 4
hc = chr(13) & chr(10)
Redim sort(Length)
digital =""
For I = 1 To Length - Len(num)
digital = digital &"0"
Next
For I = 1 To Len(num)
digital = digital & Mid(num, I, 1)
Next
For I = 1 To Len(digital)
sort(I) = Mid(digital, I, 1)
Next
Width = 8 * Len(digital)
Height = 10
Response.ContentType ="image/x-xbitmap"
Image ="#define counter_width" & Width & hc
Image = Image &"#define counter_height" & Height & hc
Image = Image &"static unsigned char counter_bits[] = {" & hc
For I = 1 To Height
For J = 1 To Length
Image = Image & a(sort(J),I) &","
Next
Next
Image = Left(Image, Len(Image) - 1)
Image = Image &"};" & hc
Response.Write Image
%>
0條評論