首页 美女贴图 网络日记 重庆租房 搜索指南 网络电视 飘网音乐 飘网博客 精彩网址 友情链接 飘网地图 本站留言
飘网中国
专题:网络营销 | 网站设计 | QQ技巧 | 搜索优化 | 菜鸟进阶 | 病毒攻防 | 网络技术 | 系统应用 | 本站作品 | 常用软件 | 工具软件 |
飘网中国>>网站设计>>正文

ASP代码:生成可变长/随机彩色验证码(BMP)

编辑:admin 来源: 更新:2006-12-28 点击:
【字体:

摘要:由于验证码在如今的网络上的作用越来越大,我就从新整理出一下如何制作和使用验证码的方法。看到一位朋友贴的自己写的验证码程序,虽然他的程序是黑白有杂点,然后就写出了这些代码,随机生成各位验证码。
关键字:ASP 验证码 
正文:
B(0) & ChrB(&HFF) & ChrB(&HFF) & ChrB(0) & ChrB(0) & ChrB(&HFF) & ChrB(&HFF) & ChrB(&HFF) & ChrB(0)

''下面输出图片数据
For i = 10 to 0 Step -1
   For j = 0 to Text_Len - 1
      For k = 1 to 9 Step 2
         If Mid(Text_Data(Int_Temp(j)) ,  i * 10 + k , 1) = "0" Then Int_Temp2 = Get_BackColor() * 16 Else Int_Temp2 = Get_ForeColor() * 16
         If Mid(Text_Data(Int_Temp(j)) ,  i * 10 + k + 1 , 1) = "0" Then Int_Temp2 = Int_Temp2 + Get_BackColor() Else Int_Temp2 = Int_Temp2 + Get_ForeColor()
         Response.BinaryWrite ChrB(Int_Temp2)
      Next
   Next
   Int_Temp2 = (Text_Len / 4 - Text_Len \ 4) * 4
   Select Case Int_Temp2
   Case 1
      Response.BinaryWrite ChrB(0) & ChrB(0) & ChrB(0)
   Case 2
      Response.BinaryWrite ChrB(0) & ChrB(0)
   Case 3
      Response.BinaryWrite ChrB(0)
   End Select
Next

Function Get_BackColor()
''得到一个背景色;
''此处的Rnd * 10000是决定背景杂色的多少;
''值越大,则杂色越少,图片越容易看清楚;
If Int(Rnd * 10000) = 0 Then
   Get_BackColor = CInt(Mid("00021209",Int(Rnd * 4) * 2 + 1,2))
Else
   Get_BackColor = CInt(Mid("081515151515",Int(Rnd * 6) * 2 + 1,2))
End If
End Function

Function Get_ForeColor()
''得到一个前景色
Get_ForeColor = CInt(Mid("00021209",Int(Rnd * 4) * 2 + 1,2))
End Function
%>


第二步,在要输入验证码的页面放入如下调用代码:

<input name="vcode" type="text" size="8" maxlength="5">
<img src=getcode.asp>

第三步,不要忘了一定要验证哦。验证方法如下,在验证的页面里写上:

<%
if session("Cn-pn.com")<>request.form("vcode") then
#出错信息#
else
#通过验证#
end if
%>

[1][2][3]
上一篇:个人网站为什么会失败?看分析案例
下一篇:无组件生成验证码:GIF格式的asp代码
最新文章 更多
推荐文章 更多
热门文章 更多
© 2005-2010 飘网中国 版权所有
站长邮箱:①LCC-749AT163.com ②FlymornATgmail.com(AT改为@)
如转载时,请注明出处;本站部分资源来自网络,如有侵权,请来信说明;飘易文章系统 HTML版.
渝ICP备05000119号