這篇文章主要講解了“asp.net驗(yàn)證碼的制作方法”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“asp.net驗(yàn)證碼的制作方法”吧!
10余年的榆陽(yáng)網(wǎng)站建設(shè)經(jīng)驗(yàn),針對(duì)設(shè)計(jì)、前端、開(kāi)發(fā)、售后、文案、推廣等六對(duì)一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。營(yíng)銷型網(wǎng)站的優(yōu)勢(shì)是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整榆陽(yáng)建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無(wú)論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。創(chuàng)新互聯(lián)公司從事“榆陽(yáng)網(wǎng)站設(shè)計(jì)”,“榆陽(yáng)網(wǎng)站推廣”以來(lái),每個(gè)客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。實(shí)際上關(guān)于asp.net驗(yàn)證碼制作的文章已經(jīng)很多很多了,但是今天還是要和大家繼續(xù)分享,親,可以綜合幾篇實(shí)例,編寫出適用于自己網(wǎng)站的ASP.NET驗(yàn)證碼,大概也就兩大部分:
先建立一個(gè)asp.net窗體ValidateCode.aspx;不寫任何東西。直接在后臺(tái)ValidateCode.aspx.cs中寫如下代碼:
protected void Page_Load(object sender, EventArgs e) { string validateCode = CreateValidateCode();//生成驗(yàn)證碼 Bitmap bitmap = new Bitmap(imgWidth,imgHeight);//生成Bitmap圖像 DisturbBitmap(bitmap); //圖像背景 DrewValidateCode(bitmap,validateCode);//繪制驗(yàn)證碼圖像 bitmap.Save(Response.OutputStream,ImageFormat.Gif);//保存圖像,等待輸出 } private int codeLen = 4;//驗(yàn)證碼長(zhǎng)度 private int fineness = 85;//圖片清晰度 private int imgWidth = 48;//圖片寬度 private int imgHeight = 24;//圖片高度 private string fontFamily = "Times New Roman";//字體名稱 private int fontSize = 14;//字體大小 //private int fontStyle = 0;//字體樣式 private int posX = 0;//繪制起始坐標(biāo)X private int posY = 0;//繪制坐標(biāo)Y private string CreateValidateCode() //生成驗(yàn)證碼 { string validateCode = ""; Random random = new Random();// 隨機(jī)數(shù)對(duì)象 for (int i = 0; i < codeLen; i++)//循環(huán)生成每位數(shù)值 { int n = random.Next(10);//數(shù)字 validateCode += n.ToString(); } Session["vcode"] = validateCode;//保存驗(yàn)證碼 這Session是在前臺(tái)調(diào)用的。 return validateCode;// 返回驗(yàn)證碼 } private void DisturbBitmap(Bitmap bitmap)//圖像背景 { Random random = new Random();//通過(guò)隨機(jī)數(shù)生成 for (int i = 0; i < bitmap.Width; i++)//通過(guò)循環(huán)嵌套,逐個(gè)像素點(diǎn)生成 { for (int j = 0; j < bitmap.Height; j++) { if (random.Next(90) <= this.fineness) bitmap.SetPixel(i, j, Color.LightGray); } } } private void DrewValidateCode(Bitmap bitmap, string validateCode)//繪制驗(yàn)證碼圖像 { Graphics g = Graphics.FromImage(bitmap);//獲取繪制器對(duì)象 Font font = new Font(fontFamily, fontSize, FontStyle.Bold);//設(shè)置繪制字體 g.DrawString(validateCode, font, Brushes.Black, posX, posY);//繪制驗(yàn)證碼圖像 }
在Login.aspx窗體頁(yè)面中實(shí)現(xiàn)如下圖功能:
Login.aspx窗體前臺(tái):
//這個(gè)函數(shù)是在點(diǎn)擊驗(yàn)證碼圖片就會(huì)更換驗(yàn)證碼 //可以使用微軟自帶的jqury.js 下面jquery-1.4.1.min.js版本之上的?;蛘咴趈query官網(wǎng)上下載就可以。 <script src="styles/jquery-1.4.1.min.js" type="text/javascript"></script> function f_refreshtype() { var Image1 = document.getElementByIdx_x_x_x("img"); if (Image1 != null) { Image1.src = Image1.src + "?"; } } ---<img src="ValidateCode.aspx" id="img" onclick="f_refreshtype()" width="50px"/>//調(diào)用函數(shù),實(shí)現(xiàn)更換驗(yàn)證碼
后臺(tái)代碼:點(diǎn)擊登錄驗(yàn)證用戶是否輸入正確。
string usercode = txtcode.Text.Trim(); if (usercode == Session["vcode"].ToString())//Session["vcode"] { }
感謝各位的閱讀,以上就是“asp.net驗(yàn)證碼的制作方法”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)asp.net驗(yàn)證碼的制作方法這一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司,,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!
分享文章:asp.net驗(yàn)證碼的制作方法-創(chuàng)新互聯(lián)
文章來(lái)源:http://jinyejixie.com/article46/dsiheg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)頁(yè)設(shè)計(jì)公司、網(wǎng)站設(shè)計(jì)、品牌網(wǎng)站制作、自適應(yīng)網(wǎng)站、網(wǎng)站維護(hù)、關(guān)鍵詞優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容