在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
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 "验证码错误";
|
请发表评论