国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

首頁 后端開發(fā) C#.Net教程 asp.net生成驗證碼代碼(純中文)

asp.net生成驗證碼代碼(純中文)

Jan 13, 2017 pm 02:34 PM
驗證碼

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; //添加引用 
/// <summary> 
/// CheckCode_Ch 的摘要說明 
/// </summary> 
public class CheckCode_Ch 
{ 
public CheckCode_Ch() 
{ 
// 
// TODO: 在此處添加構(gòu)造函數(shù)邏輯 
// 
} 
private static object[] CreateString() 
{ 
//定義一個數(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[4]; 
for (int i = 0; i < 4; i++) 
{ 
//獲取區(qū)位碼第一位 
int ran1 = ran.Next(11, 14); 
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(0, 7); 
} 
else 
{ 
ran2 = ran.Next(0, 16); 
} 
string str2 = str[ran2].Trim(); 
//獲取區(qū)位碼第三位 
ran = new Random(ran2 * unchecked((int)DateTime.Now.Ticks) + i); 
int ran3 = ran.Next(10, 16); 
string str3 = str[ran3].Trim(); 
//獲取區(qū)位碼第四位 
ran = new Random(ran3 * unchecked((int)DateTime.Now.Ticks) + i); 
int ran4; 
if (ran3 == 10) 
{ 
ran4 = ran.Next(1, 16); 
} 
else if (ran3 == 15) 
{ 
ran4 = ran.Next(0, 15); 
} 
else 
{ 
ran4 = ran.Next(0, 16); 
} 
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 static string GetString() 
{ 
Encoding gb = Encoding.GetEncoding("gb2312"); 
object[] bytes = CreateString(); 
//根據(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; 
HttpContext.Current.Response.Cookies.Add(new HttpCookie("CheckCode", str)); 
return str; 
} 
public static void GraphicsImage() 
{ 
System.Drawing.Bitmap image = new System.Drawing.Bitmap((int)Math.Ceiling((GetString().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(0, 0, image.Width, image.Height), Color.Blue, Color.DarkRed, 1.2f, true); 
g.DrawString(GetString(), font, brush, 2, 2); 
//畫圖片的前景噪音點 
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), 0, 0, image.Width - 1, image.Height - 1); 
System.IO.MemoryStream ms = new System.IO.MemoryStream(); 
image.Save(ms, System.Drawing.Imaging.ImageFormat.Gif); 
HttpContext.Current.Response.ClearContent(); 
HttpContext.Current.Response.ContentType = "image/Gif"; 
HttpContext.Current.Response.BinaryWrite(ms.ToArray()); 
} 
catch (Exception ms) 
{ 
HttpContext.Current.Response.Write(ms.Message); 
} 
} 
}

第二步建立一個頁面引用類庫ChineseCheckCode.aspx前臺不用寫代碼,后臺引用類庫。。

using System; 
using System.Collections; 
using System.Configuration; 
using System.Data; 
using System.Web; 
using System.Web.Security; 
using System.Web.UI; 
using System.Web.UI.HtmlControls; 
using System.Web.UI.WebControls; 
using System.Web.UI.WebControls.WebParts; 
public partial class UserValidator_ChineseCheckCode : System.Web.UI.Page 
{ 
protected void Page_Load(object sender, EventArgs e) 
{ 
CheckCode_Ch.GraphicsImage(); //調(diào)用方法生成四位漢字驗證碼 
} 
}

第三步引用驗證碼頁

<asp:TextBox ID="Validator" runat="server" Width="150px" ></asp:TextBox> 
<img id="Img1" alt="看不清,請點擊我!" onclick="this.src=this.src+&#39;?&#39;" src="ChineseCheckCode.aspx" 
style="width: 75px; height: 24px" align="left" /> 
<asp:ImageButton ID="imgBtnLogin" runat="server" ImageUrl="~/Images/Login.GIF" 
OnClick="imgBtnLogin_Click" />

后臺判斷

protected void imgBtnLogin_Click(object sender, ImageClickEventArgs e) 
{ 
HttpCookie cookie = Request.Cookies["CheckCode"]; 
if (cookie.Value == this.Validator.Text.Trim()) 
{ 
//。。。 
} 
else 
{ 
Response.Write("<script>alert(&#39;驗證碼輸入錯誤,請重新輸入!&#39;);Location=&#39;ChineseCodeValidator.aspx&#39;</script>"); 
return; 
} 
}

以上驗證碼生成四位,請各位根據(jù) 情況做適當修改。?
現(xiàn)在總結(jié)了生成純數(shù)字、數(shù)字字母混合、純漢字的驗證碼技術。希望對各位有所幫助。。

更多asp.net生成驗證碼代碼(純中文)相關文章請關注PHP中文網(wǎng)!

本站聲明
本文內(nèi)容由網(wǎng)友自發(fā)貢獻,版權歸原作者所有,本站不承擔相應法律責任。如您發(fā)現(xiàn)有涉嫌抄襲侵權的內(nèi)容,請聯(lián)系admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費脫衣服圖片

Undresser.AI Undress

Undresser.AI Undress

人工智能驅(qū)動的應用程序,用于創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用于從照片中去除衣服的在線人工智能工具。

Clothoff.io

Clothoff.io

AI脫衣機

Video Face Swap

Video Face Swap

使用我們完全免費的人工智能換臉工具輕松在任何視頻中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的代碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

功能強大的PHP集成開發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級代碼編輯軟件(SublimeText3)

谷歌瀏覽器不顯示驗證碼圖片怎么辦?chrome瀏覽器不顯示驗證碼? 谷歌瀏覽器不顯示驗證碼圖片怎么辦?chrome瀏覽器不顯示驗證碼? Mar 13, 2024 pm 08:55 PM

谷歌瀏覽器不顯示驗證碼圖片怎么辦?在使用谷歌瀏覽器登錄網(wǎng)頁有時候需要驗證碼驗證。部分用戶在使用圖片驗證碼的時候發(fā)現(xiàn)谷歌瀏覽器無法正常顯示圖片的內(nèi)容。這應該怎么辦呢?下面小編帶來谷歌瀏覽器驗證碼不顯示處理方法介紹,希望對大家有所幫助!  方法介紹  1、進入軟件,點擊右上角的“更多”按鈕,選擇下方選項列表中的“設置”進入?! ?、進入新界面后,點擊左側(cè)的“隱私設置和安全性”選項?! ?、接著點擊右側(cè)中的“網(wǎng)站設置&rdquo

虛擬號碼可以接收驗證碼嗎 虛擬號碼可以接收驗證碼嗎 Jan 02, 2024 am 10:22 AM

虛擬號碼可以接收驗證碼,只要注冊時填寫的手機號碼符合規(guī)定,并且能夠正常接通手機號,就可以收到短信驗證碼。不過,使用虛擬手機號需要注意,部分網(wǎng)站不支持虛擬手機號注冊,因此需要選擇正規(guī)的虛擬手機號服務商。

驗證碼攔不住機器人了!谷歌AI已能精準識別模糊文字,GPT-4則裝瞎求人幫忙 驗證碼攔不住機器人了!谷歌AI已能精準識別模糊文字,GPT-4則裝瞎求人幫忙 Apr 12, 2023 am 09:46 AM

“最煩登網(wǎng)站時各種奇奇怪怪(甚至變態(tài))的驗證碼了。”現(xiàn)在,有一個好消息和一個壞消息。好消息就是:AI可以幫你代勞這件事了。不信你瞧,以下是三張識別難度依次遞增的真實案例:而這些是一個名為“Pix2Struct”的模型給出的答案:全部準確無誤、一字不差有沒有?有網(wǎng)友感嘆:確定,準確性比我強。所以可不可以做成瀏覽器插件??不錯,有人表示:別看這幾個案例相比還算簡單,但凡微調(diào)一下,我都不敢想象其效果有多厲害了。所以,壞消息就是——驗證碼馬上就要攔不住機器人了?。ㄎkU危險危險……)如何做到?Pix2St

PHP圖片處理案例:如何實現(xiàn)圖片的驗證碼功能 PHP圖片處理案例:如何實現(xiàn)圖片的驗證碼功能 Aug 17, 2023 pm 12:09 PM

PHP圖片處理案例:如何實現(xiàn)圖片的驗證碼功能隨著互聯(lián)網(wǎng)的快速發(fā)展,驗證碼成為了保護網(wǎng)站安全的重要手段之一。驗證碼是一種通過圖像識別技術來確定用戶是否為真實用戶的驗證方式。本文將介紹如何使用PHP來實現(xiàn)圖片的驗證碼功能,并附帶代碼示例。簡介驗證碼是一張包含隨機字符的圖片,用戶需要輸入圖片中的字符才能通過驗證。實現(xiàn)驗證碼的主要過程包括生成隨機字符、繪制字符到圖片

如何使用PHP創(chuàng)建驗證碼圖片? 如何使用PHP創(chuàng)建驗證碼圖片? Sep 13, 2023 am 11:40 AM

如何使用PHP創(chuàng)建驗證碼圖片?驗證碼(CAPTCHA)是一種常用的驗證用戶是否為人而不是機器的方法。在網(wǎng)站上,我們經(jīng)常會看到驗證碼圖片,要求用戶輸入圖片上顯示的隨機字符或數(shù)字,以完成登錄、注冊、評論等操作。本文將介紹如何使用PHP創(chuàng)建驗證碼圖片,并提供具體的代碼示例。一、PHPGD庫要創(chuàng)建驗證碼圖片,我們需要使用PHP的GD庫。GD庫是一個用于處理圖像的擴

手機為什么收不到驗證碼 手機為什么收不到驗證碼 Aug 17, 2023 pm 02:49 PM

手機收不到驗證碼是網(wǎng)絡問題、手機設置問題、手機運營商問題和個人設置問題導致的。詳情介紹:1、網(wǎng)絡問題,手機所處的網(wǎng)絡環(huán)境不穩(wěn)定或者信號弱,就有可能導致驗證碼無法及時送達;2、手機設置問題,不小心將手機的短信或語音功能關閉,或者將驗證碼的發(fā)送號碼加入到黑名單中,從而導致驗證碼無法正常收到;3、手機運營商問題,手機運營商可能會出現(xiàn)故障或者維護,導致驗證碼無法及時送達等等。

PHP開發(fā)指南:實現(xiàn)驗證碼登錄 PHP開發(fā)指南:實現(xiàn)驗證碼登錄 Jul 01, 2023 am 09:27 AM

隨著互聯(lián)網(wǎng)的發(fā)展和智能手機的普及,驗證碼登錄功能被越來越多的網(wǎng)站和應用程序采用。驗證碼登錄是一種通過輸入正確的驗證碼來驗證用戶身份的登錄方式,以提高安全性和防止惡意攻擊。在PHP開發(fā)中,實現(xiàn)簡單的驗證碼登錄功能并不復雜,可以通過以下步驟來完成。創(chuàng)建數(shù)據(jù)庫表首先,我們需要在數(shù)據(jù)庫中創(chuàng)建一個用于存儲驗證碼信息的表。表結(jié)構(gòu)可以包含以下字段:id:自增主鍵phon

如何使用 JavaScript 實現(xiàn)驗證碼功能? 如何使用 JavaScript 實現(xiàn)驗證碼功能? Oct 19, 2023 am 10:46 AM

如何使用JavaScript實現(xiàn)驗證碼功能?隨著網(wǎng)絡的發(fā)展,驗證碼已經(jīng)成為了網(wǎng)站和應用程序中不可或缺的安全機制之一。驗證碼(VerificationCode)是一種用于判斷用戶是否為人類而不是機器的技術。通過驗證碼,網(wǎng)站和應用程序可以防止垃圾信息提交、惡意攻擊、機器人爬蟲等問題。本文將介紹如何使用JavaScript實現(xiàn)驗證碼功能,并提供具體的代碼

See all articles