青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

牽著老婆滿街逛

嚴以律己,寬以待人. 三思而后行.
GMail/GTalk: yanglinbo#google.com;
MSN/Email: tx7do#yahoo.com.cn;
QQ: 3 0 3 3 9 6 9 2 0 .

asp.net(c#)中文驗證碼程序

來源:http://www.sosuo8.com/article/show.asp?id=816

天在同學的書上看到的,跟大家分享下,

效果:

先建一個checkcode.aspx.

進入checkcode.aspx.cs

using System;
using System.Data;
using System.Configuration;
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.Text;  //添加引用
using System.Drawing;  //添加引用

public partial class _Default : System.Web.UI.Page 
{
    
protected void Page_Load(object sender, EventArgs e)
    
{
        GraphicsImage(
4);  //調用方法生成四位漢字驗證碼
    }


    
private object[] CreateString(int strlength)
    
{
        
//定義一個數(shù)組存儲漢字編碼的組成元素
        string[] str = new string[16"0""1""2""3""4""5""6""7""8""9""a""b""c""d""e""f" };

        Random ran 
= new Random();  //定義一個隨機數(shù)對象
        object[] bytes = new object[strlength];
        
for (int i = 0; i < strlength; i++)
        
{
            
//獲取區(qū)位碼第一位
            int ran1 = ran.Next(1114);
            
string str1 = str[ran1].Trim();

            
//獲取區(qū)位碼第二位并防止數(shù)據(jù)重復
            ran = new Random(ran1 * unchecked((int)DateTime.Now.Ticks) + i);
            
int ran2;
            
if (ran1 == 13)
            
{
                ran2 
= ran.Next(07);
            }

            
else
            
{
                ran2 
= ran.Next(016);
            }

            
string str2 = str[ran2].Trim();

            
//獲取區(qū)位碼第三位
            ran = new Random(ran2 * unchecked((int)DateTime.Now.Ticks) + i);
            
int ran3 = ran.Next(1016);
            
string str3 = str[ran3].Trim();

            
//獲取區(qū)位碼第四位
            ran = new Random(ran3 * unchecked((int)DateTime.Now.Ticks) + i);
            
int ran4;
            
if (ran3 == 10)
            
{
                ran4 
= ran.Next(116);
            }

            
else if (ran3 == 15)
            
{
                ran4 
= ran.Next(015);
            }

            
else
            
{
                ran4 
= ran.Next(016);
            }

            
string str4 = str[ran4].Trim();

            
//定義字節(jié)變量存儲產(chǎn)生的隨機漢字區(qū)位碼
            byte byte1 = Convert.ToByte(str1 + str2, 16);
            
byte byte2 = Convert.ToByte(str3 + str4, 16);

            
byte[] stradd = new byte[] { byte1,byte2};
            
//將產(chǎn)生的漢字字節(jié)放入數(shù)組
            bytes.SetValue(stradd, i);
        }

        
return bytes;
    }


    
private string GetString(int length)
    
{
        Encoding gb 
= Encoding.GetEncoding("gb2312");
        
object[] bytes = CreateString(length);

        
//根據(jù)漢字字節(jié)解碼出中文漢字
        string str1 = gb.GetString((byte[])Convert.ChangeType(bytes[0], typeof(byte[])));
        
string str2 = gb.GetString((byte[])Convert.ChangeType(bytes[1], typeof(byte[])));
        
string str3 = gb.GetString((byte[])Convert.ChangeType(bytes[2], typeof(byte[])));
        
string str4 = gb.GetString((byte[])Convert.ChangeType(bytes[3], typeof(byte[])));

        
string str = str1 + str2 + str3 + str4;
        Response.Cookies.Add(
new HttpCookie("CheckCode", str));
        
return str;
    }


    
private void GraphicsImage(int length)
    
{
        System.Drawing.Bitmap image 
= new System.Drawing.Bitmap((int)Math.Ceiling((GetString(length).Length * 22.5)), 22);
        Graphics g 
= Graphics.FromImage(image);  //創(chuàng)建畫布

        
try
        
{
            
//生成隨機生成器
            Random random = new Random();

            
//清空圖片背景色
            g.Clear(Color.White);

            
//畫圖片的背景噪音線
            for (int i = 0; i < 1; i++)
            
{
                
int x1 = random.Next(image.Width);
                
int x2 = random.Next(image.Width);
                
int y1 = random.Next(image.Height);
                
int y2 = random.Next(image.Height);

                g.DrawLine(
new Pen(Color.Black), x1, y1, x2, y2);
            }


            Font font 
= new System.Drawing.Font("Couriew New"12, System.Drawing.FontStyle.Bold );
            System.Drawing.Drawing2D.LinearGradientBrush brush 
= new System.Drawing.Drawing2D.LinearGradientBrush
                (
new Rectangle(00, image.Width, image.Height), Color.Blue, Color.DarkRed, 1.2ftrue);
            g.DrawString(GetString(length), font, brush, 
22);

            
//畫圖片的前景噪音點
            for (int i = 0; i < 50; i++)
            
{
                
int x = random.Next(image.Width);
                
int y = random.Next(image.Height);

                image.SetPixel(x, y, Color.FromArgb(random.Next()));
            }


            
//畫圖片的邊框線
            g.DrawRectangle(new Pen(Color.Silver), 00, image.Width - 1, image.Height - 1);
            System.IO.MemoryStream ms 
= new System.IO.MemoryStream();
            image.Save(ms, System.Drawing.Imaging.ImageFormat.Gif);
            Response.ClearContent();
            Response.ContentType 
= "image/Gif";
            Response.BinaryWrite(ms.ToArray());
        }

        
catch (Exception ms)
        
{
            Response.Write(ms.Message);
        }


    }

}


 

有耐心的就看完,沒耐心的就直接復制吧!

注意里面的一句:
Response.Cookies.Add(new HttpCookie("CheckCode", str));

是用Cookies保存的不是用Session大家注意點.

新建一個defaulta.aspx,

代碼主要是

<asp:TextBox ID="TextBox3" runat="server" Font-Size="9pt" Width="65px"></asp:TextBox>
<asp:Image ID="Image1" src="CheckCode.aspx" runat="server" Height="21px" Width="85px" />
<asp:Button ID="Button1" runat="server" Font-Size="9pt" Text="確定" OnClick="Button1_Click" />


注意上面只是貼出主要代碼,只是一個文本框,一個驗證碼圖片,一個確定按鈕.

進入default.aspx.cs

 

protected void Button1_Click(object sender, EventArgs e)
    
{
        HttpCookie cookie 
= Request.Cookies["CheckCode"];
        
if (cookie.Value == this.TextBox3.Text.Trim())
        
{
            Response.Write(
"<script>alert(‘驗證碼正確!‘)</script>");
        }

        
else
        
{
            Response.Write(
"<script>alert(‘驗證碼錯誤!‘)</script>");
        }

    }


自己看看!!!

源碼下載:CnCheckCode.rar

posted on 2007-08-31 11:34 楊粼波 閱讀(648) 評論(0)  編輯 收藏 引用


只有注冊用戶登錄后才能發(fā)表評論。
網(wǎng)站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            一本色道久久综合狠狠躁篇怎么玩 | 久久影院亚洲| 亚洲伦理精品| 另类av一区二区| 午夜伦理片一区| 亚洲精品婷婷| 在线观看欧美精品| 国产精品一区免费观看| 欧美国产视频在线| 久久岛国电影| 亚洲天堂免费观看| 日韩视频一区二区三区在线播放 | 国产亚洲aⅴaaaaaa毛片| 欧美精品在线视频观看| 久久婷婷国产综合国色天香| 亚洲男女自偷自拍| 夜夜嗨av一区二区三区免费区| 欧美激情自拍| 欧美a一区二区| 久久亚洲私人国产精品va媚药| 亚洲欧美日韩精品久久久| 99精品视频免费全部在线| 一区二区在线观看视频| 国产拍揄自揄精品视频麻豆| 欧美三区在线视频| 欧美欧美在线| 欧美激情在线有限公司| 美女黄毛**国产精品啪啪| 久久精品亚洲一区| 欧美一区二区在线播放| 亚洲你懂的在线视频| 亚洲一区亚洲| 亚洲欧美国产高清va在线播| 亚洲一区视频在线观看视频| 亚洲视频在线观看免费| 亚洲视频免费| 亚洲一区二区免费在线| 亚洲宅男天堂在线观看无病毒| 一区二区高清| 亚洲一区二区三区激情| 亚洲一区国产精品| 一本色道久久综合亚洲精品高清| 99国产精品久久久久老师| 99re66热这里只有精品4| 一本大道久久a久久精二百| 一区二区冒白浆视频| 亚洲天天影视| 亚洲欧美日韩精品久久奇米色影视| 亚洲一区二区在线看| 香蕉视频成人在线观看| 久久久久成人精品| 美女福利精品视频| 欧美劲爆第一页| 欧美日韩综合另类| 国产精品自拍视频| 在线播放视频一区| 日韩天堂在线视频| 午夜精品亚洲| 你懂的国产精品| 最新成人在线| 亚洲午夜精品网| 久久九九国产精品| 欧美国产一区在线| 国产精品成人播放| 国产一区二区三区在线观看网站 | 亚洲欧美日韩精品久久久久| 欧美伊人久久久久久午夜久久久久 | 午夜电影亚洲| 久久综合给合久久狠狠色| 欧美日韩国产精品| 国产日韩欧美日韩| 亚洲欧洲在线视频| 亚洲女人天堂av| 美女任你摸久久| 亚洲精品综合| 久久成人人人人精品欧| 欧美高清在线视频| 国产日韩精品综合网站| 亚洲片在线观看| 亚洲欧美日韩国产一区| 欧美成人一区二区三区| 国产精品99久久久久久有的能看| 久久福利资源站| 欧美日韩久久久久久| 国产专区综合网| 中日韩男男gay无套 | 亚洲婷婷综合色高清在线| 久久久久久久欧美精品| 欧美色网在线| 亚洲激情小视频| 久久国产精品色婷婷| 亚洲美女色禁图| 久久久另类综合| 国产精品伊人日日| 一区二区毛片| 亚洲福利视频专区| 亚洲一区视频在线| 欧美伦理视频网站| 亚洲第一福利视频| 欧美一区二区三区四区在线观看地址| 亚洲国产精品传媒在线观看| 久久国产主播| 国产女同一区二区| 亚洲尤物在线| 亚洲人成在线观看| 久久综合久久久久88| 国产亚洲日本欧美韩国| 亚洲综合欧美| 日韩网站在线观看| 欧美激情1区2区3区| 在线国产亚洲欧美| 久久免费高清视频| 亚洲欧美成人网| 国产精品久久国产精麻豆99网站| 亚洲精品中文字幕在线观看| 免费看黄裸体一级大秀欧美| 欧美一区二区三区久久精品| 国产精品日韩精品| 亚洲私人黄色宅男| 日韩亚洲欧美一区二区三区| 欧美福利一区二区| 亚洲欧洲在线一区| 欧美成人r级一区二区三区| 欧美在线视频二区| 国产一在线精品一区在线观看| 欧美在线观看视频在线 | 欧美大尺度在线| 亚洲福利在线观看| 麻豆精品在线视频| 久久久另类综合| 亚洲国产精品久久久久婷婷老年| 你懂的国产精品永久在线| 久久人人爽人人爽爽久久| 国内精品久久久久国产盗摄免费观看完整版| 午夜伦欧美伦电影理论片| 亚洲已满18点击进入久久| 国产精品看片你懂得| 欧美一区二区视频免费观看| 亚洲免费视频成人| 国产亚洲欧美激情| 久久香蕉国产线看观看网| 久久久久久久久综合| 亚洲欧洲日韩综合二区| 亚洲精品小视频| 国产精品扒开腿做爽爽爽软件 | 欧美二区在线播放| 欧美激情影院| 亚洲一区二区视频| 亚洲欧美日韩成人| 黄色欧美成人| 亚洲国产va精品久久久不卡综合| 欧美精品一区二| 亚洲在线免费| 欧美在线视频一区| 亚洲国产精品久久91精品| 亚洲激情女人| 国产精品亚洲激情| 欧美va亚洲va国产综合| 免费成人av在线看| 一区二区三区欧美在线| 亚洲免费中文| 亚洲激情国产| 国产精品99久久久久久宅男| 国产曰批免费观看久久久| 欧美激情二区三区| 欧美性大战久久久久久久| 欧美在线免费| 老司机免费视频久久| 亚洲一区二区精品视频| 欧美一区二区三区在线观看 | 亚洲美女福利视频网站| 国产精品香蕉在线观看| 欧美大片在线观看一区| 国产精品国产精品| 美女黄毛**国产精品啪啪 | 夜夜精品视频| 在线日韩欧美视频| a91a精品视频在线观看| 精品成人乱色一区二区| 99成人精品| 在线观看日韩专区| 亚洲视频在线二区| 亚洲国产天堂久久国产91| 亚洲免费在线播放| 亚洲免费激情| 久久久99免费视频| 午夜久久美女| 欧美精品一卡| 免费看亚洲片| 国产啪精品视频| 亚洲精选在线观看| 亚洲国产成人在线播放| 亚洲欧美日韩在线综合| 日韩视频一区二区三区在线播放免费观看 | 国产精品一二三| 91久久中文| 亚洲国产天堂网精品网站| 亚洲欧美在线免费观看| 夜色激情一区二区| 美女任你摸久久|