文章·资料 电脑软件 手机软件 网站源码




    本 站 搜 索
   推 荐 文 章        More...
华硕易电脑(ASUS Eee PC 10..
先来段开场白:为了外出携带方便..
Acronis True Image 使用..
  一款可以在Windows下使用..
Norton Ghost 使用详解
一、分区备份   使用Ghost..
    文 章 阅 读 排 行
“啊估文章软件站”网站系..
一、调试测试网站系统时,如何..
关于 Firefox 在中国持续..
亲爱的 Firefox 用户及 Firefox..
向日葵远程控制软件,设置..
向日葵远程控制软件有个人版和..
夸克网盘新用户注册如何获..
夸克网盘,新用户注册如何获得1..
FileZilla Server 设置参考
FileZilla Server 启动界面 ..
PakePlus 构建 APP 需要 Gi..
PakePlus 是一个基于 Rust Taur..
电脑显示器使用 HDMI 数据..
如果电脑显示器使用 HDMI 数据..
ASP/JavaScript:不刷新页..
function GuReturnElement(..
分享几个免费申请 SSL 证..
DigiCert 原 Symantec(赛门铁..
关闭微信的个性化推荐广告
有网友说到,微信的初衷是拉近..
 文 章 信 息
ASP英文字母加数字随机验证码
评论()〗〖留言〗〖收藏
〖文章分类:电脑·手机·网络 / 网站设计·开发·优化〗〖阅读选项
  我们平常见的多数是单纯的数字验证码或英文字母验证码,而这个验证码不错,英文字母和数字结合,安全性更好,值得收藏!

<%
 Sub ImageValidCode(sName)
 Response.Expires = -1 
 Response.AddHeader "Pragma","no-cache"
 Response.AddHeader "cache-ctrol","no-cache"
 Response.ContentType = "Image/BMP"
 Randomize
 Dim i, ii, iii
 Const cOdds = 4 '杂点出现的机率
 Const cAmount = 36 ' 文字数量
 Const cCode = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ" '颜色的数据(字符,背景)
 Dim vColorData(1)
 vColorData(0) = ChrB(255) & ChrB(000) & ChrB(000) '字符颜色
 vColorData(1) = ChrB(000) & ChrB(255) & ChrB(255) '背景颜色
 Dim vCode(4), vCodes
 For i=0 To 3
 vCode(i) = Int(Rnd * cAmount)
 vCodes = vCodes & Mid(cCode, vCode(i)+1, 1)
 Next
 Session.Value(sName) = vCodes'记录入Session
 Dim vNumberData(35)
 vNumberData(0) = "1110000111110111101111011110111101001011110100101111010010111101001011110111101111011110111110000111"
 vNumberData(1) = "1111011111110001111111110111111111011111111101111111110111111111011111111101111111110111111100000111"
 vNumberData(2) = "1110000111110111101111011110111111111011111111011111111011111111011111111011111111011110111100000011"
 vNumberData(3) = "1110000111110111101111011110111111110111111100111111111101111111111011110111101111011110111110000111"
 vNumberData(4) = "1111101111111110111111110011111110101111110110111111011011111100000011111110111111111011111111000011"
 vNumberData(5) = "1100000011110111111111011111111101000111110011101111111110111111111011110111101111011110111110000111"
 vNumberData(6) = "1111000111111011101111011111111101111111110100011111001110111101111011110111101111011110111110000111"
 vNumberData(7) = "1100000011110111011111011101111111101111111110111111110111111111011111111101111111110111111111011111"
 vNumberData(8) = "1110000111110111101111011110111101111011111000011111101101111101111011110111101111011110111110000111"
 vNumberData(9) = "1110001111110111011111011110111101111011110111001111100010111111111011111111101111011101111110001111"
 vNumberData(10) = "1111011111111101111111101011111110101111111010111111101011111100000111110111011111011101111000100011"
 vNumberData(11) = "1000000111110111101111011110111101110111110000111111011101111101111011110111101111011110111000000111"
 vNumberData(12) = "1110000011110111101110111110111011111111101111111110111111111011111111101111101111011101111110001111"
 vNumberData(13) = "1000001111110111011111011110111101111011110111101111011110111101111011110111101111011101111000001111"
 vNumberData(14) = "1000000111110111101111011011111101101111110000111111011011111101101111110111111111011110111000000111"
 vNumberData(15) = "1000000111110111101111011011111101101111110000111111011011111101101111110111111111011111111000111111"
 vNumberData(16) = "1110000111110111011110111101111011111111101111111110111111111011100011101111011111011101111110001111"
 vNumberData(17) = "1000100011110111011111011101111101110111110000011111011101111101110111110111011111011101111000100011"
 vNumberData(18) = "1100000111111101111111110111111111011111111101111111110111111111011111111101111111110111111100000111"
 vNumberData(19) = "1110000011111110111111111011111111101111111110111111111011111111101111111110111110111011111000011111"
 vNumberData(20) = "1000100011110111011111011011111101011111110001111111010111111101101111110110111111011101111000100011"
 vNumberData(21) = "1000111111110111111111011111111101111111110111111111011111111101111111110111111111011110111000000011"
 vNumberData(22) = "1000100011110010011111001001111100100111110101011111010101111101010111110101011111010101111001010011"
 vNumberData(23) = "1000100011110011011111001101111101010111110101011111010101111101100111110110011111011001111000110111"
 vNumberData(24) = "1110001111110111011110111110111011111011101111101110111110111011111011101111101111011101111110001111"
 vNumberData(25) = "1000000111110111101111011110111101111011110000011111011111111101111111110111111111011111111000111111"
 vNumberData(26) = "1110001111110111011110111110111011111011101111101110111110111011111011101001101111011001111110001011"
 vNumberData(27) = "1000001111110111011111011101111101110111110000111111010111111101101111110110111111011101111000110011"
 vNumberData(28) = "1110000011110111101111011110111101111111111001111111111001111111111011110111101111011110111100000111"
 vNumberData(29) = "1000000011101101101111110111111111011111111101111111110111111111011111111101111111110111111110001111"
 vNumberData(30) = "1000100011110111011111011101111101110111110111011111011101111101110111110111011111011101111110001111"
 vNumberData(31) = "1000100011110111011111011101111101110111111010111111101011111110101111111010111111110111111111011111"
 vNumberData(32) = "1001010011110101011111010101111101010111110101011111001001111110101111111010111111101011111110101111"
 vNumberData(33) = "1000100011110111011111101011111110101111111101111111110111111110101111111010111111011101111000100011"
 vNumberData(34) = "1000100011110111011111011101111110101111111010111111110111111111011111111101111111110111111110001111"
 vNumberData(35) = "1100000011110111011111111101111111101111111110111111110111111111011111111011111111101110111100000011"
  ' 输出图像文件头
 Response.BinaryWrite ChrB(66) & ChrB(77) & ChrB(230) & ChrB(4) & ChrB(0) & ChrB(0) & ChrB(0) & ChrB(0) & ChrB(0) & ChrB(0) & ChrB(54) & ChrB(0) & ChrB(0) & ChrB(0) & ChrB(40) & ChrB(0) & ChrB(0) & ChrB(0) & ChrB(40) & ChrB(0) & ChrB(0) & ChrB(0) & ChrB(10) & ChrB(0) & ChrB(0) & ChrB(0) & ChrB(1) & ChrB(0)
  ' 输出图像信息头
 Response.BinaryWrite ChrB(24) & ChrB(0) & ChrB(0) & ChrB(0) & ChrB(0) & ChrB(0) & ChrB(176) & ChrB(4) & ChrB(0) & ChrB(0) & ChrB(18) & ChrB(11) & ChrB(0) & ChrB(0) & ChrB(18) & ChrB(11) & ChrB(0) & ChrB(0) & ChrB(0) & ChrB(0) & ChrB(0) & ChrB(0) & ChrB(0) & ChrB(0) & ChrB(0) & ChrB(0)
 For i=9 To 0 Step -1 ' 历经所有行
 For ii=0 To 3 ' 历经所有字
 For iii=1 To 10 ' 历经所有像素
 If Rnd * 99 + 1 < cOdds Then ' 随机生成杂点
 Response.BinaryWrite vColorData(0)
 Else
 Response.BinaryWrite vColorData(Mid(vNumberData(vCode(ii)), i*10+iii, 1))
 End If
 Next
 Next
 Next
 End Sub

Call ImageValidCode("ValidCode")
%>
验证码使用方法:比较表单输入的验证码字符是否和下面的值一致。

Session("ValidCode")

文章作者:未知  更新日期:2008-03-07
〖文章浏览:〗〖发送文章〗〖打印文章
〖文章阅读说明〗
·本站大部分文章转载于网络,如有侵权请留言告知,本站即做删除处理。
·本站法律法规类文章转载自[中国政府网(www.org.cn)],相关法律法规如有修订,请浏览[中国政府网]网站。
·本站转载的文章,不为其有效性,实效性,安全性,可用性等做保证。
·如果有什么问题,或者意见建议,请联系[网站管理员]。