验证代码的生成
来源:互联网 发布:mysql trigger 编辑:程序博客网 时间:2024/05/16 09:06
验证代码的生成
public partial class RandomCode : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string Num=CreateNum(6);
HttpCookie code = new HttpCookie("code", Num);
Response.Cookies.Add(code);
//Label1.Text = Num;
CreateCode(Num);
}
//生成随机数
private string CreateNum(int VcodeNum)
{
String Vchar = "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";
string[] VcArray = Vchar.Split(new char[]{','});
string ReturnNum="";
Random r = new Random();
for (int i = 0; i < VcodeNum; i++)
{
int j = r.Next(35);
char c = Convert.ToChar(VcArray[i]);
ReturnNum += VcArray[j].ToString();
}
return ReturnNum;
}
//生成随机数的图片
private void CreateCode(string RndNum)
{
Bitmap Img = null;
Graphics g = null;
MemoryStream ms = new MemoryStream();
int gheight = RndNum.Length * 12;//这是随机图片的高度
Img = new Bitmap(gheight,25);//创建一个图片
g = Graphics.FromImage(Img);
//设置背景
g.Clear(Color.Wheat);
//文字字体设置
Font f = new Font("Arial Black", 10);
//文字颜色,要用s写出字来
SolidBrush s = new SolidBrush(Color.Green);
g.DrawString(RndNum, f, s, 3,3);
Img.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);
Response.ClearContent();
// Response.ContentType = "images/Jpeg";//假如只是设置这里的话页面会无法显示,所有后来我只能用下面的Response.AddHeader()方法了
Response.AddHeader("ContentType", "images/Jpeg");
Response.BinaryWrite(ms.ToArray());
g.Dispose();
Img.Dispose();
Response.End();
}
}
验证时的代码:
protected void Validate_Click(object sender, EventArgs e)
{
HttpCookie code = Request.Cookies["code"];
if (TextBox1.Text.Trim() == code.Value.ToString())
{
Response.Write(@"<script>alert('succes!');</script>");
}
}
- 验证代码的生成
- 生成验证码的代码
- 生成验证图片的核心代码!!
- 验证控件-生成的 JS 代码
- 一段生成验证码图片的代码
- 4位验证码的生成代码
- 生成验证码和汉字的代码
- 简单的php代码生成验证图片
- 生成验证码代码!
- 验证码生成代码
- 验证码生成代码
- 验证码生成代码
- 生成验证码代码
- 生成验证码代码
- 登陆时验证码的生成的代码
- 用ASP动态生成JavaScript的表单验证代码
- ASP动态生成的javascript表单验证代码。
- ASP动态生成的javascript表单验证代码。
- 数据结构:栈的典型应用之一:行编辑(C++)
- Mahout并行基于物品的协同过滤算法源码分析(Distributed item-based CF)
- VelocityTracker简单用法
- ubuntu系统上开启vpn服务
- c++一元多项式的乘法和加法
- 验证代码的生成
- 如何用readstring()来读文件
- hdu 1905 快速幂取模
- c++构造函数认识(一)
- LIGHTOJ 1027
- 图的广度优先搜索(邻接矩阵)
- 自考的结束预示着新的开始
- 保存Google、Bing翻译的语音
- ASP.NET 下载的几种方法