zoukankan
html css js c++ java
.net 点击刷新验证码问题
验证码生成文件:
validate.aspx.cs
using
System;
using
System.Data;
using
System.Configuration;
using
System.Collections;
using
System.Web;
using
System.Web.Security;
using
System.Web.UI;
using
System.Web.UI.WebControls;
using
System.Web.UI.WebControls.WebParts;
using
System.Web.UI.HtmlControls;
using
System.IO;
using
System.Drawing;
using
System.Drawing.Imaging;
using
System.Drawing.Drawing2D;
public
partial
class
validate : System.Web.UI.Page
{
private
Bitmap validateimage;
private
Graphics g;
protected
void
Page_Load(
object
sender, EventArgs e)
{
if
(
!
IsPostBack)
{
string
VNum
=
MakeValidateCode();
Session[
"
VNum
"
]
=
VNum;
ValidateCode(VNum);
}
}
public
void
ValidateCode(
string
VNum)
{
validateimage
=
new
Bitmap(
60
,
15
, PixelFormat.Format24bppRgb);
g
=
Graphics.FromImage(validateimage);
g.FillRectangle(
new
LinearGradientBrush(
new
Point(
0
,
0
),
new
Point(
110
,
20
), Color.FromArgb(
240
,
255
,
255
,
255
), Color.FromArgb(
240
,
255
,
255
,
255
)),
0
,
0
,
200
,
200
);
g.DrawString(VNum,
new
Font(
"
arial
"
,
11
),
new
SolidBrush(Color.Red),
new
PointF(
6
,
0
));
g.Save();
MemoryStream ms
=
new
MemoryStream();
validateimage.Save(ms, System.Drawing.Imaging.ImageFormat.Gif);
Response.ClearContent();
Response.ContentType
=
"
image/bmp
"
;
Response.BinaryWrite(ms.ToArray());
Response.End();
}
string
MakeValidateCode()
{
char
[] s
=
new
char
[]
{
'
0
'
,
'
1
'
,
'
2
'
,
'
3
'
,
'
4
'
,
'
5
'
,
'
6
'
,
'
7
'
,
'
8
'
,
'
9
'
,
'
a
'
,
'
b
'
,
'
c
'
,
'
d
'
,
'
e
'
,
'
f
'
,
'
g
'
,
'
h
'
,
'
i
'
,
'
j
'
,
'
k
'
,
'
l
'
,
'
m
'
,
'
n
'
,
'
o
'
,
'
p
'
,
'
q
'
,
'
r
'
,
'
s
'
,
'
t
'
,
'
u
'
,
'
v
'
,
'
w
'
,
'
x
'
,
'
y
'
,
'
z
'
,
'
A
'
,
'
B
'
,
'
C
'
,
'
D
'
,
'
E
'
,
'
F
'
,
'
G
'
,
'
H
'
,
'
I
'
,
'
J
'
,
'
K
'
,
'
L
'
,
'
M
'
,
'
N
'
,
'
O
'
,
'
P
'
,
'
Q
'
,
'
R
'
,
'
S
'
,
'
T
'
,
'
U
'
,
'
V
'
,
'
W
'
,
'
X
'
,
'
Y
'
,
'
Z
'
}
;
string
num
=
""
;
Random r
=
new
Random();
for
(
int
i
=
0
; i
<
4
; i
++
)
{
num
+=
s[r.Next(
0
, s.Length)].ToString();
}
return
num;
}
}
在页面中调用:
<
img
src
="../validate.aspx"
id
="yzm"
onclick
="this.src='../validate.aspx?abc='+Math.random()"
alt
="图片看不清?点击重新得到验证码"
style
="cursor:hand;"
/>
注意:有一点要说明,当点击刷新时,validate.asp?后面一定要有一个参数,若没有这个无效的参数,程序会认为你请求的是同一个文件,因而不会刷新的。这里的参数abc是个随意的,只起改变请求文件的作用。
查看全文
相关阅读:
Python采用struct处理二进制
OVS处理upcall流程分析
mybatis在CRUD
leetcode先刷_Valid Sudoku
[TS] Implement a doubly linked list in TypeScript
[TS] Implement a singly linked list in TypeScript
[Python] The get() method on Python dicts and its "default" arg
[Javascript AST] 4. Continue: Report ESLint error
[RxJS] Learn How To Use RxJS 5.5 Beta 2
[NPM] Update published npm packages using np
原文地址:https://www.cnblogs.com/wbcms/p/1043769.html
最新文章
非常好的数据挖掘面经
手写一些题目
数据库第一二三范式复习
跟风记录一个知乎热门讨论-腾讯/阿里/百度哪个部门最值得加入
【科研论文】适用于生产现场的点焊动态电阻提取方法
冒泡排序2
Extjs4.0.7 实现Grid的嵌套
uvalive 2088
采用DWR、maven保存数据到数据库
UVA 10404 Bachet's Game(dp + 博弈?)
热门文章
在mysql数据库中关于日期时间字段的处理
[置顶] 2013暑假总结-廊坊人才人事档案管理软件
hdu 4465 Candy(2012 ACM-ICPC 成都现场赛)
进程管理
effective c++ 条款7
window.url.createobjecturl 兼容多种浏览器(IE,google,360,Safari,firefox)
收集 天创恒达高清采集卡TC-5A0N7
XMPP开发adiumclient登陆
Codeforces 106D Treasure Island 预处理前缀+暴力(水
ANDROID L——RecyclerView,CardView进口和使用(Demo)
Copyright © 2011-2022 走看看