您正在使用 IPV4 [3.236.145.153] 访问本站,您本次已经查看了 1 页
用户名: 密 码: 验证码:     用QQ登录本站
首页 软件 编程 笑话 知识 公告 台风 日历 计算器
[公益]保护绿色环境,构建和谐社会       悟空收录网      

【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中      
[公益] 地球是我家,绿化靠大家      
2024年 妇女节 010
2024年 清明节 037
2025年 元 旦 309
2025年 春 节 337
 
您现在的位置:首页 >> ASP/ASP.net >> 内容
本类新增
本类热门
ASP生成数字相加求和的BMP图片验证码
内容摘要: %Response.Buffer=TrueResponse.ExpiresAbsolute=Now()-1Response.Expires=0Response.cachecontrol='no-cache'Response.ContentType='Image/Bmp'CallCom_CreatValidCode()SubCom_CreatValidCode......
<%

Response.Buffer=True

Response.ExpiresAbsolute=Now()-1

Response.Expires=0

Response.cachecontrol="no-cache"

Response.ContentType="Image/Bmp"

CallCom_CreatValidCode()

SubCom_CreatValidCode()

Randomize

Dimi,ii,iii

ConstcAmount=10'数值个数

ConstcCode="0123456789"'数值范围

DimvColorData(2)

vColorData(0)=""'黑色点要转为彩色点,暂时不定义

vColorData(1)=ChrB(255)&ChrB(255)&ChrB(255)'白点

DimvCode(4),vCodes'产生一组任意数

Fori=0To3

vCode(i)=Int(Rnd*cAmount)'数组等于总数*随机数

ifi=1thenvCode(i)="11"'第二位为+

ifi=3thenvCode(i)="10"'第四位为=

vCodes=vCodes&Mid(cCode,vCode(i)+1,1)'串等于串加上后续值

Next

session("checkcode")=int(Mid(vCodes,1,1))+int(Mid(vCodes,2,1))'计算相加和值并赋值给session

DimvNumberData(36)

vNumberData(0)=

"1110000111110111101111011110111101111011110111101111011110111101111011110111101111011110111110000111"

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)=

"1111111111111111111111111111111000000001111111111111111111111000000001111111111111111111111111111111"

'表示+

vNumberData(11)=

"1111111111111100111111110011111111001111100000000110000000011111001111111100111111110011111111111111"

Response.BinaryWriteChrB(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.BinaryWriteChrB(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)

Fori=9To0Step-1'行

Forii=0To3'字数

Foriii=1To10'像素点

ifMid(vNumberData(vCode(ii)),i*10+iii,1)="0"then'产生彩色点,减去一个固定值,可使颜色偏深

dima,b,c

a=abs(Rnd*256-60)

b=abs(Rnd*256-128)

c=abs(Rnd*256-60)

vColorData(0)=ChrB(a)&ChrB(b)&ChrB(c)

Response.BinaryWritevColorData(Mid(vNumberData(vCode(ii)),i*10+iii,1))

else

dimd,e,f'产生彩色背景,颜色偏浅,也可以随机生成噪点做背景

d=abs(Rnd*255)

e=abs(Rnd*255)

f=abs(Rnd*255)

ifd+e+f>640then'可改值,调整背景色深

vColorData(1)=ChrB(d)&ChrB(e)&ChrB(f)

Response.BinaryWritevColorData(Mid(vNumberData(vCode(ii)),i*10+iii,1))

else

Response.BinaryWritevColorData(Mid(vNumberData(vCode(ii)),i*10+iii,1))

endif

endif

Next

Next

Next

EndSub

%>

以上代码可直接另存为一个文件,如vcode.asp,然后通过图片的方式调用改文件,如<imgsrc="vcode.asp"border=0align="absmiddle"/>,然后在提交后的处理页面里验证session("checkcode")的值就可以了。

版权声明:本内容来源于网络,如有侵犯您的版权,请联系站长,本站收到您的信息后将及时处理。
上一篇:Asp 返回引用类型函数代码

 

下一篇:ASP.net做的IP访问限制

发布日期:2024/2/1
手机扫二维码直达本页
发布时间:11:09:36
点  击:29
录  入:星儿
相关文章
Baidu
YiJiaCMS 7.3.8 build231228(MSSQL) 闽ICP备05000814号-1
本空间由腾讯云(轻量应用服务器)提供,Cloudflare提供加速防护
运行时间载入中.....