asp实现带刷新功能的验证码代码

ASP教程 2025-07-31

本文给大家分享的是一段使用asp实现的验证码功能,而且是带刷新的,代码非常简洁,非常实用,有需要的小伙伴可以参考下。

将以下代码放到一个单独的页面checkcode.asp

  1. <%
  2. OptionExplicit
  3. Response.buffer=true
  4. CallCom_CreatValidCode(validateCode)
  5. SubCom_CreatValidCode(pSN)
  6. '禁止缓存
  7. Response.Expires=-9999
  8. Response.AddHeaderPragma,no-cache
  9. Response.AddHeadercache-ctrol,no-cache
  10. Response.ContentType=Image/BMP
  11. Randomize
  12. Dimi,ii,iii
  13. ConstcOdds=2'杂点出现的机率
  14. ConstcAmount=10'文字数量
  15. ConstcCode=0123456789
  16. '颜色的数据(字符,背景)
  17. DimvColorData(1)
  18. vColorData(0)=ChrB(0)&ChrB(0)&ChrB(211)'蓝0,绿0,红0(黑色)
  19. vColorData(1)=ChrB(255)&ChrB(255)&ChrB(255)'蓝250,绿236,红211(浅蓝色)
  20. '随机产生字符
  21. DimvCode(4),vCodes
  22. Fori=0To3
  23. vCode(i)=Int(Rnd*cAmount)
  24. vCodes=vCodes&Mid(cCode,vCode(i)+1,1)
  25. Next
  26. Session(pSN)=vCodes'记录入Session
  27. '字符的数据
  28. DimvNumberData(9)
  29. vNumberData(0)=
  30. 1110000111110111101111011110111101001011110100101111010010111101001011110111101111011110111
  31. 110000111
  32. vNumberData(1)=
  33. 1111011111110001111111110111111111011111111101111111110111111111011111111101111111110111111
  34. 100000111
  35. vNumberData(2)=
  36. 1110000111110111101111011110111111111011111111011111111011111111011111111011111111011110111
  37. 100000011
  38. vNumberData(3)=
  39. 1110000111110111101111011110111111110111111100111111111101111111111011110111101111011110111
  40. 110000111
  41. vNumberData(4)=
  42. 1111101111111110111111110011111110101111110110111111011011111100000011111110111111111011111
  43. 111000011
  44. vNumberData(5)=
  45. 1100000011110111111111011111111101000111110011101111111110111111111011110111101111011110111
  46. 110000111
  47. vNumberData(6)=
  48. 1111000111111011101111011111111101111111110100011111001110111101111011110111101111011110111
  49. 110000111
  50. vNumberData(7)=
  51. 1100000011110111011111011101111111101111111110111111110111111111011111111101111111110111111
  52. 111011111
  53. vNumberData(8)=
  54. 1110000111110111101111011110111101111011111000011111101101111101111011110111101111011110111
  55. 110000111
  56. vNumberData(9)=
  57. 1110001111110111011111011110111101111011110111001111100010111111111011111111101111011101111
  58. 110001111
  59. '输出图像文件头
  60. Response.BinaryWriteChrB(66)&ChrB(77)&ChrB(230)&ChrB(4)&ChrB(0)&ChrB(0)&ChrB(0)
  61. &ChrB(0)&_
  62. ChrB(0)&ChrB(0)&ChrB(54)&ChrB(0)&ChrB(0)&ChrB(0)&ChrB(40)&ChrB(0)&_
  63. ChrB(0)&ChrB(0)&ChrB(40)&ChrB(0)&ChrB(0)&ChrB(0)&ChrB(10)&ChrB(0)&_
  64. ChrB(0)&ChrB(0)&ChrB(1)&ChrB(0)
  65. '输出图像信息头
  66. Response.BinaryWriteChrB(24)&ChrB(0)&ChrB(0)&ChrB(0)&ChrB(0)&ChrB(0)&ChrB(176)
  67. &ChrB(4)&_
  68. ChrB(0)&ChrB(0)&ChrB(18)&ChrB(11)&ChrB(0)&ChrB(0)&ChrB(18)&ChrB(11)&_
  69. ChrB(0)&ChrB(0)&ChrB(0)&ChrB(0)&ChrB(0)&ChrB(0)&ChrB(0)&ChrB(0)&_
  70. ChrB(0)&ChrB(0)
  71. Fori=9To0Step-1'历经所有行
  72. Forii=0To3'历经所有字
  73. Foriii=1To10'历经所有像素
  74. '逐行、逐字、逐像素地输出图像数据
  75. IfRnd*99+1
  76. Response.BinaryWritevColorData(0)
  77. Else
  78. Response.BinaryWritevColorData(Mid(vNumberData(vCode(ii)),i*10+iii,1))
  79. EndIf
  80. Next
  81. Next
  82. Next
  83. EndSub
  84. %>

需要用得页面用如下方式引用:

验证码: src=checkcode.asp cellpadding="0" cellspacing="0" style="border-collapse: collapse; border-spacing: 0px; width: 780px; clear: both; padding: 0px !important; margin: 0px !important; font-size: 1em !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; border: 0px !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; line-height: 1.1em !important; outline: 0px !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; vertical-align: baseline !important; box-sizing: content-box !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; min-height: inherit !important;">

以上所述就是本文的全部内容了,希望大家能够喜欢。