ASP.net代码
private string GenerateCheckCode()
{
int number;
char code;
string checkCode = string.Empty;
Random random = new Random();
for (int i = 0; i < 4; i++)
{
number = random.Next();
if (number % 2 == 0)
{
code = (char)('0' + (char)(number % 10));
}
else
{
code = (char)('A' + (char)(number % 26));
}
checkCode += code.ToString();
}
Response.Cookies.Add(new HttpCookie("CheckCode", checkCode));
return checkCode;
}
private void CreateCheckCodeImage(string checkCode)
{
if (checkCode == null || checkCode.Trim() == string.Empty)
return;
System.Drawing.Bitmap image = new System.Drawing.Bitmap((int)Math.Ceiling((checkCode.Length * 12.5)), 22);
Graphics g = Graphics.FromImage(image);
try
{//生成随机生成器
Random random = new Random();
g.Clear(Color .White );
//画图片的背景噪音线
for (int i = 0; i < 25; 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);
}
Font font = new System.Drawing.Font("Arial",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(checkCode, font, brush, 2, 2);
//画图片的前景噪音点
for (int i = 0; i < 100; 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 );
Response.ClearContent();
Response.ContentType ="image/gif";
Response.BinaryWrite (ms.ToArray ());
}
catch (Exception ms)
{
Response .Write (ms.Message );
}
finally
{
g.Dispose ();
image.Dispose ();
}
}
javascript代码(新建一个aspx文件)
<script type="text/javascript">
function change() {
var imgNode = document.getElementById("vimg");
imgNode.src = "Code.aspx?t=" + (new Date()).valueOf(); // 这里加个时间的参数是为了防止浏览器缓存的问题
}
</script>
html代码:
<asp:Image ID="vimg" runat="server" Height ="18px" Width ="60px" src="Code.aspx" /><input type="button" value="换一张图片" onclick="change()" />
分享到:
相关推荐
含字母数字验证码生成
在这个特定的压缩包文件中,包含的是汉字验证码和字母数字验证码的源码,主要涉及C#和VB.NET两种编程语言。下面将详细介绍这两种验证码类型及其相关技术。 首先,汉字验证码是验证码的一种形式,它由随机选择的汉字...
Python 如何生成包含字母和数字的图片验证码 Python源码Python 如何生成包含字母和数字的图片验证码 Python源码Python 如何生成包含字母和数字的图片验证码 Python源码Python 如何生成包含字母和数字的图片验证码 ...
这个过程与数字验证码类似,只是生成的验证码字符串会包含数字和字母,增加了识别难度,进一步防止自动化攻击。后端代码可能包括生成这种复杂验证码的算法,以及比较用户输入的验证逻辑。 最后,`GetValid.aspx.cs`...
这种验证码通常由随机生成的数字和字母组合而成,用户在提交表单前需要正确输入显示的验证码,以此证明他们是真人而非程序。 在这款jQuery数字字母组合验证码实现中,主要涉及以下技术点: 1. **jQuery库**:...
中文及字母数字验证码的实现涉及多个技术层面,包括图像生成、字符混合、扭曲处理以及识别验证。在此,我们将深入探讨这一主题。 首先,验证码的生成过程通常包括以下几个步骤: 1. **字符生成**:验证码通常由...
随机验证码。 - 随机生成十组六位字符组成的验证码。 - 验证码由大小写字母、数字字符组成。
用户下载后,可以直接运行这个程序,生成所需的4位字母和数字验证码。 总结来说,4位含字母和数字的随机验证码是网络安全中的重要工具,它通过随机性、复杂性和时效性等手段,有效防止了恶意软件和自动化攻击,同时...
工具的核心功能是生成数字验证码。这通常涉及到随机数生成和图像处理技术。Java中的`java.util.Random`类可以生成随机数字,而验证码的图形化则可能通过`java.awt`和`javax.imageio`包实现,包括画布创建、颜色填充...
易语言随机生成数字字母汉字验证码源码,生成验证码,随机数字,随机字母,随机号码,随机汉字
Android随机生成验证码View,支持数字,字母,数字字母混合,汉子验证码,可以设置验证码位数等.rar,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。
在这个"JSP生成数字验证码程序例子"中,我们将探讨如何利用JSP来生成一种常见的安全机制——数字验证码。 验证码的主要目的是防止自动化程序(如机器人或爬虫)进行非法操作,比如注册、登录或提交表单。它们通常...
本篇文章将深入探讨如何在Servlet中生成一种包含数字和字母的动态验证码。 验证码的主要目的是验证用户是人而不是机器,通过让用户提供显示的一串随机字符(数字和字母混合)来达到这一目的。在Servlet中实现动态...
demo03昨天作业:编写生成n位数字验证码的函数.html
java验证码生成,数字+字母 史上最牛逼的验证码,很好用的,不信试试。
1. **随机数生成**:为了创建验证码,我们需要生成随机的文字和数字组合。PHP提供了`rand()`函数来生成随机整数,`chr()`函数可以将数字转换为对应的ASCII字符,从而得到字母。同时,我们还可以利用`mt_rand()`(更...
用java编写的四位随机的验证码,包括数字跟字母 简单易懂
在PHP中,生成随机数字验证码是一项常见的功能,用于网站的安全验证,例如登录、注册或防止自动机器人操作。验证码的主要目的是确保用户是人类而非自动化程序。接下来,我们将详细探讨如何使用PHP来实现这一功能。 ...