• C#.net制作验证码(英文与数字组成的4位随机数),以及MD5值的使用


    原文发布时间为:2008-09-22 —— 来源于本人的百度文章 [由搬家工具导入]

    参考资料:http://www.cnblogs.com/gwazy/articles/139510.html

    三个窗体:

    default1:

    属性值:

    源码:

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

    <html xmlns="http://www.w3.org/1999/xhtml" >
    <head runat="server">
        <title>无标题页</title>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
            <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>&nbsp;
            <asp:ImageButton ID="ImageButton1" runat="server" CausesValidation="False" Height="35px"
                ImageUrl="~/Default2.aspx" ToolTip="看不清图片?点击更换" Width="75px" /><br />
            <br />
            <asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" /></div>
        </form>
    </body>
    </html>

    代码:

    public partial class _Default : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
        }
        protected void Button1_Click(object sender, EventArgs e)
        {
            if (string.Compare(TextBox1.Text, Session["checkcode"].ToString(),true)==0)
            {
                Response.Redirect("~/Default3.aspx");
            }
        }
    }

    default2为空窗体:

    代码:

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

    public partial class Default2 : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            System.Random rd = new Random();
            int number;
            char code;
            string checkcode=string.Empty;
            for (int i = 0; i < 4; i++)
            {
                number = rd.Next();
                if (number % 2 == 0)
                    code = (char)('0' + (char)(number % 10));
                else
                    code = (char)('A' + (char)(number % 26));
                checkcode += code.ToString();
            }
            Session["checkcode"] = checkcode;
            Bitmap bp = new Bitmap(75, 35);
            Graphics g = Graphics.FromImage(bp);
            g.Clear(Color.White);

            for (int i = 0; i < 40; i++)
            {
                int x1 = rd.Next(bp.Width);
                int y1 = rd.Next(bp.Height);
                int x2 = rd.Next(bp.Width);
                int y2 = rd.Next(bp.Height);
                g.DrawLine(new Pen(Color.Aqua), x1, y1, x2, y2);
            }
            Font ft = new Font("Arial", 18, FontStyle.Bold | FontStyle.Italic);
            System.Drawing.Drawing2D.LinearGradientBrush lgb = new System.Drawing.Drawing2D.LinearGradientBrush(new Rectangle(0, 0, bp.Width, bp.Height), Color.Blue, Color.Blue,10, true);
            g.DrawString(checkcode, ft, lgb, 2, 2);
            for (int i = 0; i < 80; i++)
            {
                int x = rd.Next(bp.Width);
                int y = rd.Next(bp.Height);
                bp.SetPixel(x, y, Color.FromArgb(rd.Next()));
            }
            g.DrawRectangle(new Pen(Color.Silver), 0, 0, bp.Width-1 , bp.Height-1 );
            MemoryStream ms = new MemoryStream();
            bp.Save(ms, System.Drawing.Imaging.ImageFormat.Gif);
            //Response.ClearContent();
            //Response.ContentType = "image/Gif";
            Response.BinaryWrite(ms.ToArray());
            g.Dispose();
            ms.Dispose();
            ms.Close();
        }
    }

    default3为空窗体(MD5值的使用):

    代码:

    public partial class Default3 : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
           string md5= System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(Session["checkcode"].ToString(),"MD5");
           Response.Write(md5);
        }
    }

  • 相关阅读:
    递归神经网络(RNN)简介(转载)
    递归神经网络入门教程(转载)
    向量叉积的几何意义(转)
    向量点乘(内积)和叉乘(外积、向量积)概念及几何意义解读
    完全搞懂傅里叶变换和小波(6)――傅立叶级数展开之函数项级数的性质
    完全搞懂傅里叶变换和小波(5)——傅立叶级数展开之函数项级数的概念
    完全搞懂傅里叶变换和小波(4)——欧拉公式及其证明
    完全搞懂傅里叶变换和小波(3)——泰勒公式及其证明
    完全搞懂傅里叶变换和小波(2)——三个中值定理<转载>
    完全搞懂傅里叶变换和小波(1)——总纲<转载>
  • 原文地址:https://www.cnblogs.com/handboy/p/7141618.html
Copyright © 2020-2023  润新知