1 界面展示
2 <img id="zsCode" />
3 <a id="id" style="cursor:pointer">换一张</a>
4
5 //验证码的生成
6 int verifyLength=6;
7 int width=100, height=20;
8 SizeF verifyTextSize;
9 Bitmap bitmap=new Bitmap(Server.MapPath("~/pic/img.jpg"),true);//干扰图片
10
11 TextureBrush brush=new TextureBrush (bitmap);
12
13 string verifyText=VerifyText(verifyLength)//获取验证码
14 Session["VerifyCode"]=verifyText.ToUpper();//存储验证码
15 Font font=new Font("Arial",14,FontStyle.Bold);
16 Bitmap image=new Bitmap(width,height);
17 Graphics gs=Graphics.FromImage(image);
18 gs.Clear(Color.White);//清空背景色
19
20 //绘制验证码
21
22 verifyTextSize=gs.MeasureString(verifyText,font,brush,(width-verifyTextSize.Width)/2,(height-verifyTextSize.Height)/2);
23
24 image.Save(Response.OutputStream,system.Drawing.Imaging.ImageFormat.Jpeg);
25
26 gs.DrawString(verifyText,font,);
27
28
29 public static string VerifyText(int length)
30 {
31 char[] verify=new Char[length];
32 Random rnd=new Random();
33 char[] dic={'A','B','C','a','b','c','1','9'}; //想要出现在验证码中的字母数字 (区分大小写) 不一一全写了
34 for(int i=0;i<length;i++)
35 {
36 verify[i]=dic[rnd.Next(dic.Length-1)];
37 }
38 return new string (verify);
39 }
40
41
42 //换一张
43
44 $("#id").click(function(){
45 $("#zsCode").attr("src","/user/verycode?"+ new Date());
46 })
47
48 //登录时验证
49
50 if(Session["VerifyCode"]==null ||Session["VerifyCode"].ToString()=="")
51 return "验证码失效";
52 else if(string.IsNUllOrEmpty(login.yzCode)||Session["VerifyCode"].ToString()!=login.yzCode.ToUpper());
53 return "验证码错误";