• 一般处理程序 验证码


    一般处理程序 验证码
     
     
     
    public class 验é证¤码? : IHttpHandler
    {
    public void ProcessRequest(HttpContext context)
    {
    context.Response.ContentType = "image/JPEG";
    using (System.Drawing.Bitmap bitmap = new System.Drawing.Bitmap(200, 50))
    {
    using (System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(bitmap))
    {
    g.DrawString("十ê?一ò?月?的μ?柳á?叶ò?",new System.Drawing.Font("宋?体ì?", 20), System.Drawing.Brushes.Green,new System.Drawing.PointF(0, 0));
    g.DrawEllipse(System.Drawing.Pens.Red, new System.Drawing.Rectangle(10, 10, 10, 10));
    g.DrawEllipse(System.Drawing.Pens.Red, new System.Drawing.Rectangle(20, 20, 10, 10));
    bitmap.Save(context.Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg);
    }
    }
    }
     
     
    随机验证码
     
    Random rand = new Random();
    int code = rand.Next();
    string strcode = Convert.ToString(code);
    g.DrawString(strcode, new System.Drawing.Font("宋?体ì?", 30), System.Drawing.Brushes.Green, new System.Drawing.PointF(0, 0));
    bitmap.Save(context.Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg);
     
     
    完整验证码示例:
     
    一般处理程序
    public void ProcessRequest(HttpContext context)
    {
    context.Response.ContentType = "image/JPEG";
    using (System.Drawing.Bitmap bitmap = new System.Drawing.Bitmap(200, 50))
    {
    using (System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(bitmap))
    {
    //g.DrawString("十ê?一ò?月?的μ?柳á?叶ò?",new System.Drawing.Font("宋?体ì?", 20), System.Drawing.Brushes.Green,new System.Drawing.PointF(0, 0));
    //g.DrawEllipse(System.Drawing.Pens.Red, new System.Drawing.Rectangle(10, 10, 10, 10));
    //g.DrawEllipse(System.Drawing.Pens.Red, new System.Drawing.Rectangle(20, 20, 10, 10));
    //bitmap.Save(context.Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg);
    Random rand = new Random();
    int code = rand.Next();
    string strcode = Convert.ToString(code);
    HttpContext.Current.Session["code"] = strcode;//session需Dè要òa通í¨过1yhttpcontext实êμ现?接ó口ú
    g.DrawString(strcode, new System.Drawing.Font("宋?体ì?", 30), System.Drawing.Brushes.Green, new System.Drawing.PointF(0, 0));
    bitmap.Save(context.Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg);
    }
    }
    前台
    <form id="form1" runat="server">
    <div>
    <input type="image" src="验é证¤码?.ashx" />
    <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
    <asp:Button ID="Button1" runat="server" Text="Button" 
    onclick="Button1_Click" />
    </div>
    </form>
    后台
    protected void Button1_Click(object sender, EventArgs e)
    {
    string strcode = Session["code"].ToString();
    if (strcode==TextBox1.Text)
    {
    Response.Write("正y确è·");
    }
    else
    {
    Response.Write("错′í误ó");
    }
    }
    刷新验证码 <input type="image" src="验é证¤码?.ashx"  onclick="this.src='验证码.ashx?aaa='+new date()"/>




  • 相关阅读:
    js中父窗口获得模态窗口的返回值
    Jquery获取控件值实例(转载)
    各种类库网址学习
    IIS启动网站时, 提示: “另一个程序正在使用此文件,进程无法访问”
    查看端口占用情况
    顽固的换行问题
    mac上共享android手机屏幕软件
    关于软键盘弹出的问题
    mac搭建android studio开发环境
    C语言位域和大小端
  • 原文地址:https://www.cnblogs.com/liuzhiye/p/2705377.html
Copyright © 2020-2023  润新知