登陆时验证码的制作(asp.net)

1、显示样式:

2.新建一个页,Default2.aspx

3.在Page_load事件拷入如下代码

stringtmp = RndNum(4);

HttpCookiea =newHttpCookie("ImageV ", tmp);

Response.Cookies.Add(a);

this.ValidateCode(tmp);

4、在该页添加两个方法:

privatevoidValidateCode(stringVNum)

{

BitmapImg =null;

Graphicsg =null;

MemoryStreamms =null;

intgheight = VNum.Length * 12;

Img =newBitmap(gheight, 25);

g =Graphics.FromImage(Img);

//生¦¨²成¨¦随?机¨²生¦¨²成¨¦器¡Â

Randomrandom =newRandom();

//背À3景¡ã颜?色¦?

g.Clear(Color.Orange);

//for (int i = 0; i < 25; i++)

//{

//    int x1 = random.Next(Img.Width);

//    int x2 = random.Next(Img.Width);

//  int y1 = random.Next(Img.Height);

//    int y2 = random.Next(Img.Height);

//    g.DrawLine(new Pen(Color.Silver), x1, y1, x2, y2);

//}

//画-图ª?片?的Ì?前¡ã景¡ã噪?音°?点Ì?

for(inti = 0; i < 100; i++)

{

intx = random.Next(Img.Width);

inty = random.Next(Img.Height);

Img.SetPixel(x, y,Color.FromArgb(random.Next()));

}

//文?字Á?字Á?体¬?

Fontf =newFont("Arial   Black ", 12);

// 文?字Á?颜?色¦?

SolidBrushs =newSolidBrush(Color.White);

g.DrawString(VNum, f, s, 3, 3);

ms =newMemoryStream();

Img.Save(ms, ImageFormat.Jpeg);

Response.ClearContent();

Response.ContentType ="image/Jpeg ";

Response.BinaryWrite(ms.ToArray());

g.Dispose();

Img.Dispose();

Response.End();

}

privatestringRndNum(intVcodeNum)

{

stringVchar ="0,1,2,3,4,5,6,7,8,9,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[] VcArray = Vchar.Split(newChar[] {','});

stringVNum =" ";

inttemp = -1;

Randomrand =newRandom();

for(inti = 1; i < VcodeNum + 1; i++)

{

if(temp != -1)

{

rand =newRandom(i * temp *unchecked((int)DateTime.Now.Ticks));

}

intt = rand.Next(35);

if(temp != -1 && temp == t)

{

returnRndNum(VcodeNum);

}

temp = t;

VNum += VcArray[t];

}

returnVNum;

}

5、在建立一个页面用来显示验证码:

则在该页面添加一个图片控件

6、在该页的Page_load事件中添加

ImageButton1.ImageUrl ="Default2.aspx";

7.前台页面添加:

<asp:ImageButtonID="ImageButton1"runat="server"Width="100"Height="30"/>

看不清?<ahref="javascript:changeCode()"style="text-decoration: underline;">换一张</a>

<scripttype="text/javascript">

functionchangeCode() {

document.getElementById('ImageButton1').src = document.getElementById('ImageButton1').src +'?';

}

</script>

这样就完成啦!

登陆时验证码的制作(asp.net)的更多相关文章

  1. asp.net登录时验证码的制作与验证

    1.新建一个页面,ImageCode.aspx 2.在Page_Load中添加如下代码 string tmp = RndNum(4); HttpCookie a = new HttpCookie(&q ...

  2. SYSDBA身份登陆时可以修改其他用户的密码

    在以SYSDBA身份登陆时可以修改其他用户的密码,比如:SQL> alter user user01 identified by user10;用户已更改.这个是把USER01用户密码修改为US ...

  3. Ajax实现提交表单时验证码自动验证(原创自Zjmainstay)

    本文通过源码展示如何实现表单提交前,验证码先检测正确性,不正确则不提交表单,更新验证码. 1.前端代码 index.html <!DOCTYPE html> <html> &l ...

  4. windows live writer 尝试登陆时发生意外错误,导致无法发表博客解决方案

    刚用windows live writer发表博客, 但是出现如下提示: 尝试登陆时发生意外错误: 网络连接错误--尝试连接到一下日志时出错: http://www.cnblogs.com//xxxx ...

  5. Tamperdata工具使用(登陆时就修改用户名),篡改post数据

    Tamperdata是firefox上的一款插件,它可以实现篡改数据的功能,这样可以做一些安全的测试验证,他的原理就是在发出请求前,在本地就开始改动数据,下面修改post请求 1.安装Tamperda ...

  6. 利用htmlunit登陆带验证码图片的网站

    http://htsoft.org/html/y2011/822_using-htmlunit-landing-site-with-captcha-image.html 利用htmlunit登陆带验证 ...

  7. sql server 2008 r2 登陆时显示无法打开默认的数据库

    解决! 第一步: 远程其他服务器的数据库能连上,本地的数据库某个用户名就是打不开,一开始以为是用户名或者密码错误, 后来用sqlcmd dos命令 -S . -U an -P sa 的方式登陆时可以的 ...

  8. 解决Yii2中刷新网页时验证码不刷新的问题

    解决Yii2中刷新网页时验证码不刷新的问题 [ 2.0 版本 ] ljfrocky  2015-05-30 19:39:00  1304次浏览 5条评论 10110 在Yii2框架中,如果在表单中使用 ...

  9. Maven + SSM + Kaptcha 实现用户登录时验证码的获取(问题:302 Found)

    pom.xml(对Kaptcha.jar的引用) <!-- 验证码 jar kaptcha--> <dependency> <groupId>com.github. ...

随机推荐

  1. keras系列︱人脸表情分类与识别:opencv人脸检测+Keras情绪分类(四)

    引自:http://blog.csdn.net/sinat_26917383/article/details/72885715 人脸识别热门,表情识别更加.但是表情识别很难,因为人脸的微表情很多,本节 ...

  2. Anaconda下载(改变了镜像路径,下载速度很快!!!)

    Anaconda下载(改变了镜像路径,下载速度很快!!!) 使用conda install 包名 安装需要的Python非常方便,但是官方的服务器在国外,因此下载速度很慢,国内清华大学提供了Anaco ...

  3. docker启动报错

    1.报“can’t create unix socket /var/run/docker.sock: is a directory” 这是由于存在容器自动启动 --restart= always导致的 ...

  4. 虚拟机或真机调试React Native, 开启开发者菜单

    虚拟机调试呼出开发者菜单,只需按下Ctrl+M组合键即可: 对于真机,通常摇晃手机可呼出,也可以在cmd输入adb shell input keyevent 82呼出菜单.如果还是不行,可能是系统管家 ...

  5. R语言比较运算符和逻辑运算符

    比较运算:>,<,>=,<=,==,!=.(大于,小于,大于等于,小于等于,等于,不等于.) 逻辑运算:&,|,!.(与,或,非.)

  6. USB2.0学习笔记连载(六):USB2.0硬件设计需要注意事项

    笔者在设计USB2.0时找到了一个官方给的硬件设计正确设计指南,其中有些内容还挺nice的.不单单只是USB的设计,其中有些思想可以应用到其他的场合中. 对于USB2.0而言,全速状态下可以达到480 ...

  7. form表单target的用法

    偶然有一机会发现form表单的target的用法,可以实现当前页表单提交而不进行跳转刷新.代码如下,首页在页面里准备一form表单和一iframe <form action="提交的a ...

  8. Linux下硬链接与软链接

    linux下的链接文件,尤其是软链接使用非常的频繁: 链分为硬链接(hard link)与软链接(symbolic link) 两种:关键在于inode: 硬链接: 当系统需要读取一个文件时,就会去读 ...

  9. 使用Photoshop实现雪花飘落的效果

    一.准备工作 软件环境:PhotoshopCS5 实验目的:雪花飘落的效果 二.实验步骤 1,打开素材图片并将原图层复制 2,在菜单栏内选择:滤镜->像素化->点状化,单元格大小选6  提 ...

  10. php -- php模拟浏览器访问网址

    目前我所了解到的在php后台中,用php模拟浏览器访问网址的方法有两种: 第一种:模拟GET请求:file_get_contents($url) 通过php内置的 file_get_contents ...