ASP.NET验证码
来源:互联网 发布:多米音乐java 编辑:程序博客网 时间:2024/05/16 01:58
1.先建一个页面放验证码代码:
using 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.Imaging;
using System.Drawing;
public partial class Image : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string tmp = RndNum(Convert.ToInt16(6));
Session["verify"] = tmp;
ValidateCode(tmp);
}
private void ValidateCode(string VNum)
{
Bitmap Img = null;
Graphics g = null;
MemoryStream ms = null;
int gheight = VNum.Length * 9;
Img = new Bitmap(gheight, 18);
g = Graphics.FromImage(Img);
//背景颜色
g.Clear(Color.WhiteSmoke);
//文字字体
Font f = new Font("Tahoma", 9);
//文字颜色
SolidBrush s = new SolidBrush(Color.Red);
g.DrawString(VNum, f, s, 3, 3);
ms = new MemoryStream();
Img.Save(ms, ImageFormat.Jpeg);
Response.ClearContent();
Response.ContentType = "image/Jpeg";
Response.BinaryWrite(ms.ToArray());
g.Dispose();
Img.Dispose();
Response.End();
}
private string RndNum(int VcodeNum)
{
string MaxNum = "";
string MinNum = "";
for (int i = 0; i < 5; i++)//这里的4是验证码的位数
{
MaxNum = MaxNum + "5";
}
MinNum = MaxNum.Remove(0, 1);
Random rd = new Random();
string VNum = Convert.ToString(rd.Next(Convert.ToInt32(MinNum), Convert.ToInt32(MaxNum)));
return VNum;
}
}
2.再在登陆页面加个Image控件:
再加上一些代码就行了。。
protected void Button1_Click(object sender, EventArgs e)
{
if (txtCode.Text.Trim() != Session["verify"].ToString()) //判断验证是否一样
{
Response.Write("<script>alert('验证码错误');location='Login.aspx'</script>"); //输入错误提示
}
}
这样就完成了验证码了。。哈哈
- Asp.net验证码
- ASP.net 验证码
- ASP.NET验证码
- Asp.net验证码
- Asp.net验证码
- asp.net验证码
- asp.net 验证码
- ASP.NET 验证码
- asp.net验证码
- ASP.NET 验证码
- asp.net验证码
- asp.net验证码
- Asp.net验证码
- asp.net 验证码
- ASP.NET验证码
- Asp.net验证码
- ASP.Net 验证码
- asp.net 验证码
- 什么是RFC
- Linux环境下text model与X model的切换
- Com编程学习资料
- Android build 只能用 sun-java5-jdk
- 算法人生
- ASP.NET验证码
- history实时写入带时间戳命令
- 修改帐号登录密码
- Bootloader V110929.02
- memcache connect queue
- 46个Flex和actionscript3开源项目
- Linux 备份MySQL 并压缩
- SICP练习题 1.3~1.6
- 拟声词译法