.net图片验证码生成、点击刷新及验证输入是否正确

1.创建ValidateCode.aspx,在ValidateCode.aspx.cs中加入如下代码。生成验证码图片,在页面上输出,输出jpeg格式。

protected void Page_Load(object sender, EventArgs e)
   {
       if (!IsPostBack)
       {
           Bitmap b = new Bitmap(80, 30);// 图片大小
           Graphics g = Graphics.FromImage(b);// 对图片操作
           g.Clear(Color.Gray);// 填充背景色
           Font f = new Font("华文行楷", 20f); //设置字体和大小
           SolidBrush sb = new SolidBrush(Color.Wheat);//文字颜色
 
           String vcode = Radom(0, 9, 4);
           Session["ValidateCode"] = vcode;
           g.DrawString(vcode, f, sb, 10, 2);//图片上的文字,风格,颜色,位置
 
           b.Save(Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg);//在页面上输出,输出jpeg格式
       }
   }
 
   private string Radom(int minValue, int maxValue, int length)
   {
       Random validateCode = new Random();
       string r = "";
       for (int i = 0; i < length; i++)
       {
           r = r + validateCode.Next(minValue, maxValue);
       }
       return r;
   }

2.在用到验证码的地方加入如下代码,onclick="jaavscript:this.src='/ValidateCode.aspx?t=' + Math.random()"的作用:点击图片刷新。

<img src="/ValidateCode.aspx" onclick="jaavscript:this.src='/ValidateCode.aspx?t=' + Math.random()"/>

3.判断验证码是否输入正确

 if (!TxtVCode.Text.Equals( Session["ValidateCode"]))
        {
            Response.Write("<script>alert('验证码输入错误!');</script>");
        }
        else 
        {
        }

 

posted on 2019-03-06 16:24  菜鸟也想上天  阅读(454)  评论(0编辑  收藏  举报