验证码的编写

img图象的编写

 

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.Drawing;
using  System.IO;
using  System.Drawing.Imaging;


public   partial   class  Web_member_image : System.Web.UI.Page
{
    
protected void Page_Load(object sender, EventArgs e)
    
{
        
string tmp = RndNum(4);
        HttpCookie a 
= new HttpCookie("ImageV", tmp);
        Response.Cookies.Add(a);
        
this.ValidateCode(tmp); 

    }

    
private void ValidateCode(string VNum)
    
{
        Bitmap Img 
= null;
        Graphics g 
= null;
        MemoryStream ms 
= null;

        
int gheight = VNum.Length * 12;
        Img 
= new Bitmap(gheight, 25);
        g 
= Graphics.FromImage(Img);
        
//背景颜色 
        g.Clear(Color.White);
        
//文字字体 
        Font f = new Font("Arial Black"10);
        
//文字颜色 
        SolidBrush s = new SolidBrush(Color.Black);
        g.DrawString(VNum, f, s, 
33);
        ms 
= new MemoryStream();
        Img.Save(ms, ImageFormat.Jpeg);
        Response.ClearContent();
        Response.ContentType 
= "image/Jpeg";
        Response.BinaryWrite(ms.ToArray());

        g.Dispose();
        Img.Dispose();
        Response.End();
    }
 


    
private string RndNum(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 VNum = "";
        
int temp = -1;

        Random rand 
= new Random();

        
for (int i = 1; i < VcodeNum + 1; i++)
        
{
            
if (temp != -1)
            
{
                rand 
= new Random(i * temp * unchecked((int)DateTime.Now.Ticks));
            }


            
int t = rand.Next(35);
            
if (temp != -1 && temp == t)
            
{
                
return RndNum(VcodeNum);
            }

            temp 
= t;
            VNum 
+= VcArray[t];
        }

        
return VNum;
    }
 
}

 

 登陆或者注册页面中使用验证码

 

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.Security.Cryptography.X509Certificates;
using  System.Security.Cryptography;
using  System.Text;
public   partial   class  Web_member_login : pagebase
{
    
protected void Page_Load(object sender, EventArgs e)
    
{

    
    
    }

    

              
protected void  Submit1_ServerClick(object sender, EventArgs e)

            
{

                
//SHA1 sha1 = SHA1.Create();
                
//byte[] pwd = sha1.ComputeHash(Encoding.Unicode.GetBytes(this.pwd.Text));

               
// byte[] pwd = Encoding.Unicode.GetBytes(System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(this.pwd.Text.Trim(), "md5"));
                    string userName = this.userName.Text.ToString().Trim();
                    
string pwd = this.pwd.Text.ToString().Trim();
                  
string email = this.email.Text.ToString().Trim();
            
if (Request.Cookies["ImageV"== null)
            
{
                
this.Label1.Text = "您的浏览器设置禁用cookies,您必须设置浏览器允许使用cookies选项后才能使用本系统";
                
this.Label1.Visible = true;
                
return;
            }

                
if (string.Compare(Request.Cookies["ImageV"].Value, yanzhen.Text, true!= 0)
            
{
                
this.Label1.Text = "验证码错误,请输入正确的";
                
this.Label1.Visible = true;
                
return;
            
            }

            user_regiest regiest 
= new user_regiest();
            
bool reg = regiest.regiest(userName,email ,pwd);
            
if (reg == true)
            
{
                
this.errmail.Text = "注册成功";
            }


            
else
            
{
                
this.errmail.Text = "注册失败";
            }


        
    }


 
protected void Button1_Click(object sender, EventArgs e)
    
{
        
string email = this.email.Text.ToString().Trim();
        user_regiest regiest 
= new user_regiest();
        
bool checkMail = regiest.checkEmail(email);
        
if (checkMail == true)
        
{
            
this.errmail.Text = "邮箱可以注册";
        }

        
else
        
{
            
this.errmail.Text = "邮箱已注册,请更换";
        }

    }

}

          
            
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值