1.先寫一個驗證方法
public string CreateValidate(int count)
{
string allchar = "1,2,3,4,5,6,7,8,9,0,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[] allchararray = allchar.Split(',');//字符串除去逗號用數組接收
string randomcode = "";
int temp = -1;
Random rd = new Random();//創建隨機數實例
for (int i = 0; i < count; i++)
{
if (temp != -1)
{
rd = new Random(i * temp * ((int)DateTime.Now.Ticks));
}
int t = rd.Next(62);
if (temp == t)
{
return CreateValidate(count);
}
temp = t;
randomcode += allchararray[t];
}
Session["code"] = randomcode;//用Session保存隨機數
return randomcode;
}
2.畫一個圖片
Bitmap bm = new Bitmap(80, 20);
Graphics gp = Graphics.FromImage(bm);
gp.Clear(Color.White);
gp.DrawString(CreateValidate(4), new Font("宋體", 15), Brushes.Blue, new PointF(0, 0));
gp.DrawLine(Pens.AliceBlue, new Point(0, 10), new Point(80, 10));
gp.DrawLine(Pens.AliceBlue, new Point(0, 5), new Point(80, 10));
bm.Save(Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg); //用圖片對象,將對象本身保存爲服務端向客戶端瀏覽器的響應輸出流,並指定文件類型。
Response.Write(CreateValidate(4));
3.轉換
Session["code"].ToString().ToLower() //字母轉換成小寫
Session["code"].ToString().ToUpper()//字母轉換成大寫
驗證方法
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章
Linux基本操作命令
wbzjacky
2019-02-24 13:12:38
真實的模擬***綜合實驗
wbzjacky
2019-02-24 13:12:37
三層交換機的HSRP、vlan、端口聚合
wbzjacky
2019-02-24 13:12:37
HSRP和二層交換機的端口聚合、vlan
wbzjacky
2019-02-24 13:12:37
如果同事暗中傷害你,應該怎麼辦?
這個饅頭有餡
2019-02-24 13:59:08
職場中,抱怨越多的員工,越被領導瞧不起!
這個饅頭有餡
2019-02-24 13:59:08
老程序員被裁,應屆生卻能月薪 1.3 萬?這你能忍?
前端高達
2019-02-24 13:48:04
遇到到處蹭吃卻從不請客吃飯的主怎麼辦?
樑軍年
2019-02-24 13:26:35
高標準機房綜合配線安裝
wbzjacky
2019-02-24 13:12:38
IPsec ***實驗
wbzjacky
2019-02-24 13:12:37
CISCO路由AAA的Easy ***
wbzjacky
2019-02-24 13:12:37
CISCO訪問控制列表 企業網絡管理的必殺技
wbzjacky
2019-02-24 13:12:37