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是个随意的,只起改变请求文件的作用。
本人博客的文章大部分来自网络转载,因为时间的关系,没有写明转载出处和作者。所以在些郑重的说明:文章只限交流,版权归作者。谢谢
查看全文
相关阅读:
无法加载模块 TP3.2
always_populate_raw_post_data
关于(void**)及其相关的理解
面向对象设计原则
数据对齐总结
C++ POD类型
do..while(false)的用法总结
c++为什么定义了析构函数的类的operator new[]传入的参数会多4字节?
C++ new new[]详解
【转】C内存操作函数
原文地址:https://www.cnblogs.com/wzg0319/p/1415385.html
最新文章
Mysql8 忘记Root密码(转)
idea dubbo jar error:cvc-complex-type.2.4.c: 通配符的匹配很全面, 但无法找到元素 'dubbo:application' 的声明
性能分析Linux服务器CPU利用率(转)
2018/3/14 Hadoop学习笔记(一)
2018/3/10 手把手教你实现一个应用层协议
2018/3/4 Activiti教程之对于流程的基本操作以及从发起到完成还有相关注意事项(与Springboot整合版)三
2018/3/4 Activiti教程之流程部署篇(与Springboot整合版)二
2018/3/3 解析ThreadLocal源码
2018/3/2 区块链学习笔记
2018/2/27 Activiti教程之创建流程篇(与Springboot整合版)一
热门文章
2018/2/25 责任链以及使用递归实现反向过滤
2018/2/20 Springretry,Feign,以及用通俗的语言(自认为)教会你关于Hystrix的复杂概念
2018/2/18 SpringCloud Eureka的学习和spirng ribbon的部分源码追踪
tp5 select
Mac ssh key生成
百度编辑器ueditor上传图片失败,显示上传错误,实际上图片已经传到服务器或者本地
关闭layer.open打开的页面
a标签点击,页面自动刷新
sql 查询每天数据
Mac phpstorm破解版安装(简单,有效)
Copyright © 2011-2022 走看看