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是个随意的,只起改变请求文件的作用。
本人博客的文章大部分来自网络转载,因为时间的关系,没有写明转载出处和作者。所以在些郑重的说明:文章只限交流,版权归作者。谢谢
查看全文
相关阅读:
Java中JDK,JRE和JVM之间的关系-(转载)
linux(Ubuntu)安装QQ2013(转)
Java-寻找矩阵连通域个数
Linux 安装 python IDE
Java学习笔记-数组与容器间的转制-asList
由LCS到编辑距离—动态规划入门—算法学习笔记
Java学习笔记-策略模式
Java学习笔记-模板方法模式
Java学习笔记-迭代器模式
Java学习笔记-Collections.sort详解
原文地址:https://www.cnblogs.com/wzg0319/p/1415385.html
最新文章
Android不自动弹出软键盘和不让软键盘弹出挤压图形
拍照保存(调用手机),对话框的自定义样式
Android 上传PHP xUtils Bug修复分析过程(非常好)
VI常用的命令
Linux常用的命令以及一些常见的问题
Flash Builder如何自定义工作目录
创建Windows截图工具的快捷方式
火狐浏览器插件经常崩溃解决办法
关于浏览器主页被劫持问题解决办法
Flex Builder读书笔记(二)——MXML
热门文章
Flex Builder读书笔记(一)
nvm、nrm、npm 安装和使用详解
Docker-Compose入门-(转载)
C语言中位运算异或“∧”的作用
值传递和地址传递
指针函数与函数指针的区别-(转载)
Python应用与实践-转自(吴秦(Tyler))
Socket编程——(转载)
串口配合DMA接收不定长数据(空闲中断+DMA接收)-(转载)
STM32之HAL库、标准外设库、LL库(STM32 Embedded Software)-(转载)
Copyright © 2011-2022 走看看