验证码的使用
?后臺代碼:CheckCode.aspx
Codeusing?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.IO;
using?System.Drawing;
using?System.Drawing.Imaging;
using?System.Drawing.Drawing2D;
public?partial?class?Admin_CheckCode?:?System.Web.UI.Page
{
????private?Bitmap?validateimage;
????private?Graphics?g;
????protected?void?Page_Load(object?sender,?EventArgs?e)
????{
????????if?(!IsPostBack)
????????{
????????????string?VNum?=?MakeValidateCode();
????????????Session["VNum"]?=?VNum;
????????????ValidateCode(VNum);
????????}
????}
????public?void?ValidateCode(string?VNum)
????{
????????validateimage?=?new?Bitmap(60,?15,?PixelFormat.Format24bppRgb);
????????g?=?Graphics.FromImage(validateimage);
????????g.FillRectangle(new?LinearGradientBrush(new?Point(0,?0),?new?Point(110,?20),?Color.FromArgb(240,?255,?255,?255),?Color.FromArgb(240,?255,?255,?255)),?0,?0,?200,?200);
????????g.DrawString(VNum,?new?Font("arial",?11),?new?SolidBrush(Color.Red),?new?PointF(6,?0));
????????g.Save();
????????MemoryStream?ms?=?new?MemoryStream();
????????validateimage.Save(ms,?System.Drawing.Imaging.ImageFormat.Gif);
????????Response.ClearContent();
????????Response.ContentType?=?"image/bmp";
????????Response.BinaryWrite(ms.ToArray());
????????Response.End();
????}
????string?MakeValidateCode()
????{
????????char[]?s?=?new?char[]{'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','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?num?=?"";
????????Random?r?=?new?Random();
????????for?(int?i?=?0;?i?<?4;?i++)
????????{
????????????num?+=?s[r.Next(0,?s.Length)].ToString();
????????}
????????return?num;
????}
}
?
在Login.aspx前臺應(yīng)用:<img?src="CheckCode.aspx"?id="yzm"?onclick="this.src='CheckCode.aspx?abc='+Math.random()"?alt="圖片看不清?點(diǎn)擊重新得到驗(yàn)證碼"?style="cursor:hand;"?/>
在Login.aspx.cs中通過if?(TextBox1.Text?!=?Session["VNum"].ToString().ToLower())判斷客戶輸入的驗(yàn)證嗎是否正確。
轉(zhuǎn)載于:https://www.cnblogs.com/aisini/archive/2009/05/23/1487578.html
總結(jié)
- 上一篇: 基于 Linux 和 MiniGUI 的
- 下一篇: 2009.5.23软考_信息处理技术员