ASP实现加法验证码
将验证码改为加法运算,比如验证码显示“25+64等于?”,那么输入“91”就能通过验证。
来看看效果图对比:字符验证码: → 加法验证码:
优点:
①与纯字符验证码相比,本程序效防止了绝大部分(99%以上)广告机的自动识别。即使是中文验证码, 也能被市面上的部分广告机识别。
②与中文验证码相比,避免了用户输入用户名密码验证码的时候需要切换输入法的麻烦。
说明:该程序需要网站空间支持ASPJpeg组件、楷体_GB2312字体。
代码如下:
<% Const FontColor = &H000000 ' 字体颜色 Const BgColor = &HFFCCFF ' 背景颜色 Call CreatValidCode("GetCode") Sub CreatValidCode(pSN) Dim x, Jpeg Randomize x = Array(1+Int(Rnd()*9), Int(Rnd()*10), 1+Int(Rnd()*9), Int(Rnd()*10), 0, 0, "+") x(4) = x(0)*10 + x(1) x(5) = x(2)*10 + x(3) 'Session(pSN) = CStr(Eval(x(4) & x(6) & x(5))) Session(pSN) = CStr(x(4) + x(5)) Set Jpeg = Server.CreateObject("Persits.Jpeg") Jpeg.New 100,20,BgColor Jpeg.Quality=100 With Jpeg.Canvas .Font.Bold = True .Font.Size = 16 .Font.Rotation = 0 .Font.Family = "楷体_GB2312" .Font.Color = FontColor .PrintText 4, 3, CStr(x(0)) .PrintText 14, 3, CStr(x(1)) .PrintText 26, 3, x(6) .PrintText 38, 3, CStr(x(2)) .PrintText 48, 3, CStr(x(3)) .Font.Rotation = 15 .PrintText 55, 3, "等" .PrintText 70, 3, "于" .PrintText 85, 3, "?" End With '禁止缓存 Response.ContentType = "image/jpeg" Response.Expires = -9999 Response.AddHeader "pragma", "no-cache" Response.AddHeader "cache-ctrol", "no-cache" Response.AddHeader "Content-Disposition","inline; filename=vcode.jpg" Jpeg.SendBinary Jpeg.Close Set Jpeg = Nothing End Sub %>
以上就是关于asp实现加法验证码的关键代码,有兴趣的朋友,还可以扩展为其他的运算,比如乘法,减法,乘方等,希望本文对大家的学习有所帮助。
上一篇:asp服务器如何搭建
栏 目:ASP编程
下一篇:ASP新手必备的基础知识
本文标题:ASP实现加法验证码
本文地址:https://www.xiuzhanwang.com/a1/ASPbiancheng/11381.html
您可能感兴趣的文章
- 01-11ASP新手必备的基础知识
- 01-11asp服务器如何搭建
- 01-11ASP脚本组件实现服务器重启
- 01-11ASP动态网页制作技术经验分享
- 01-11ASP实现类似hashMap功能的类
- 01-11ASP编码必备的8条原则
- 01-11解决ASP中http状态跳转返回错误页的问题
- 01-11ASP程序中常用的脚本语言
- 01-11ASP中用select case代替其他语言中的switch case, default用case else
- 01-11asp实现限制一个ip只能访问一次的方法
阅读排行
本栏相关
- 01-11ASP实现加法验证码
- 01-11ASP新手必备的基础知识
- 01-11ASP脚本组件实现服务器重启
- 01-11asp服务器如何搭建
- 01-11ASP实现类似hashMap功能的类
- 01-11ASP动态网页制作技术经验分享
- 01-11解决ASP中http状态跳转返回错误页的问
- 01-11ASP编码必备的8条原则
- 01-11ASP中用select case代替其他语言中的sw
- 01-11ASP程序中常用的脚本语言
随机阅读
- 08-05DEDE织梦data目录下的sessions文件夹有什
- 01-10使用C语言求解扑克牌的顺子及n个骰子
- 04-02jquery与jsp,用jquery
- 08-05织梦dedecms什么时候用栏目交叉功能?
- 08-05dedecms(织梦)副栏目数量限制代码修改
- 01-11ajax实现页面的局部加载
- 01-10delphi制作wav文件的方法
- 01-10C#中split用法实例总结
- 01-10SublimeText编译C开发环境设置
- 01-11Mac OSX 打开原生自带读写NTFS功能(图文