1.新建一个aspx页面生成验证码图像

  1. using System;
  2. using System.Data;
  3. using System.Configuration;
  4. using System.Collections;
  5. using System.Collections.Generic;
  6. using System.Linq;
  7. using System.Web;
  8. using System.Web.Security;
  9. using System.Web.UI;
  10. using System.Web.UI.WebControls;
  11. using System.Web.UI.WebControls.WebParts;
  12. using System.Web.UI.HtmlControls;
  13. using System.Drawing;
  14.  
  15. public partial class NewWeb_CheckCode : System.Web.UI.Page
  16. {
  17. protected void Page_Load(object sender, EventArgs e)
  18. {
  19. CreateCheckCodeImage(GenerateCheckCode());
  20. }
  21.  
  22. private string GenerateCheckCode()
  23. {
  24. int number;
  25. char code;
  26. string checkCode = String.Empty;
  27. System.Random random = new Random();
  28. for (int i = ; i < ; i++)
  29. {
  30. number = random.Next();
  31. if (number % == )
  32. code = (char)('' + (char)(number % ));
  33. else
  34. code = (char)('A' + (char)(number % ));
  35. checkCode += code.ToString();
  36. }
  37. //Response.Cookies.Add(new HttpCookie("CheckCode", checkCode));
  38. Session["M2CheckCode"] = checkCode;
  39. return checkCode;
  40. }
  41.  
  42. private void CreateCheckCodeImage(string checkCode)
  43. {
  44. if (checkCode == null || checkCode.Trim() == String.Empty)
  45. return;
  46. System.Drawing.Bitmap image = new System.Drawing.Bitmap((int)Math.Ceiling((checkCode.Length * 12.5)), );
  47. Graphics g = Graphics.FromImage(image);
  48. try
  49. {
  50. //生成随机生成器
  51. Random random = new Random();
  52. //清空图片背景色
  53. g.Clear(Color.White);
  54. //画图片的背景噪音线
  55. for (int i = ; i < ; i++)
  56. {
  57. int x1 = random.Next(image.Width);
  58. int x2 = random.Next(image.Width);
  59. int y1 = random.Next(image.Height);
  60. int y2 = random.Next(image.Height);
  61. g.DrawLine(new Pen(Color.Black), x1, y1, x2, y2);
  62. }
  63. Font font = new System.Drawing.Font("Arial", , (System.Drawing.FontStyle.Bold | System.Drawing.FontStyle.Italic));
  64. System.Drawing.Drawing2D.LinearGradientBrush brush = new System.Drawing.Drawing2D.LinearGradientBrush(new Rectangle(, , image.Width, image.Height), Color.Blue, Color.DarkRed, 1.2f, true);
  65. g.DrawString(checkCode, font, brush, , );
  66. //画图片的前景噪音点
  67. for (int i = ; i < ; i++)
  68. {
  69. int x = random.Next(image.Width);
  70. int y = random.Next(image.Height);
  71. image.SetPixel(x, y, Color.FromArgb(random.Next()));
  72. }
  73. //画图片的边框线
  74. g.DrawRectangle(new Pen(Color.Silver), , , image.Width - , image.Height - );
  75. System.IO.MemoryStream ms = new System.IO.MemoryStream();
  76. image.Save(ms, System.Drawing.Imaging.ImageFormat.Gif);
  77. Response.ClearContent();
  78. Response.ContentType = "image/Gif";
  79. Response.BinaryWrite(ms.ToArray());
  80. }
  81. finally
  82. {
  83. g.Dispose();
  84. image.Dispose();
  85. }
  86. }
  87.  
  88. }

2.在添加验证码的地方添加

  1. <img id="ImgCheckCode" alt="验证码" src="CheckCode.aspx" onclick="reloadcode();" style="cursor:pointer;" />
  1. //验证码刷新
  2. function reloadcode() {
  3. document.getElementById("ImgCheckCode").src = "CheckCode.aspx?a=" + Math.random();
  4. }

asp.net添加验证码的更多相关文章

  1. C# DateTime的11种构造函数 [Abp 源码分析]十五、自动审计记录 .Net 登陆的时候添加验证码 使用Topshelf开发Windows服务、记录日志 日常杂记——C#验证码 c#_生成图片式验证码 C# 利用SharpZipLib生成压缩包 Sql2012如何将远程服务器数据库及表、表结构、表数据导入本地数据库

    C# DateTime的11种构造函数   别的也不多说没直接贴代码 using System; using System.Collections.Generic; using System.Glob ...

  2. ASP.NET mvc 验证码 (转)

    ASP.net 验证码(C#) MVC http://blog.163.com/xu_shuhao/blog/static/5257748720101022697309/ 网站添加验证码,主要为防止机 ...

  3. PHPCMS v9 自定义表单添加验证码验证

    1. 在 \phpcms\templates\default\formguide\show.html 中添加验证码显示 <input type="text" id=" ...

  4. Angular企业级开发(9)-前后端分离之后添加验证码

    1.背景介绍 团队开发的项目,前端基于Bootstrap+AngularJS,后端Spring MVC以RESTful接口给前端调用.开发和部署都是前后端分离.项目简单部署图如下,因为后台同时采用微服 ...

  5. PHPCMS v9 自定义表单添加验证码

    1.  在 \phpcms\templates\default\formguide\show.html 中添加验证码显示 <input type="text" id=&quo ...

  6. cas4.2.4 登添加验证码

    看了很多添加验证码的博文,唯独没有4.24的 重点看第3条,其余的和别人博文大致相同 1.首先在cas工程的web.xml增加验证码功能的支持 <!-- 验证码功能 -->      &l ...

  7. ASP.NET MVC验证码演示(Ver2)

    前一版本<ASP.NET MVC验证码演示>http://www.cnblogs.com/insus/p/3622116.html,Insus.NET还是使用了Generic handle ...

  8. [phpcms v9]自定义表单添加验证码验证功能

    修改  \phpcms\templates\default\formguide\show.html 中添加验证码显示 <input type="text" id=" ...

  9. 【转】PHPCMS v9 自定义表单添加验证码验证

    1.  在 \phpcms\templates\default\formguide\show.html 中添加验证码显示 <input type="text" id=&quo ...

随机推荐

  1. IIS7 配置

    1.配置应用程序池->高级设置 (1) .net Framework版本 :V4.0 (2)启用32位应用程序 :True (3)特定时间: 上班之前,下班之后 2.网站配置->高级设置 ...

  2. 浅谈Entity Framework中的数据加载方式

    如果你还没有接触过或者根本不了解什么是Entity Framework,那么请看这里http://www.entityframeworktutorial.net/EntityFramework-Arc ...

  3. 深入理解requestAnimationFrame

    前言 本文主要参考w3c资料,从底层实现原理的角度介绍了requestAnimationFrame.cancelAnimationFrame,给出了相关的示例代码以及我对实现原理的理解和讨论. 先来看 ...

  4. 仿IOS 开关按钮

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  5. Java程序员的日常—— 《编程思想》关于类的使用常识

    Java虽然利用JVM,让程序员可以放心大胆的使用,可是仍然会出现内存泄露等问题.世上没有绝对的银弹,因此也不能完全把所有的任务都交给JVM,了解Java中的初始化与垃圾回收还是必不可少的知识. 关于 ...

  6. Zabbix学习笔记一:基本安装与配置

    1.下载安装 http://120.52.73.43/tenet.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/3.0.1/za ...

  7. Qt学习笔记:Qt中使用Lua

    今天想在Qt中使用Lua进行数据操作 结果发现在Qt中使用Lua的文章较少,虽然很简单,但是还是写出来提供入门,顺便记录一下 我使用的是Qt Creator 3.4.2,用的是mingw4.9.2的编 ...

  8. atitit.spring3 mvc url配置最佳实践

    atitit.spring3 mvc url配置最佳实践 1. Url-pattern  bp 1 2. 通用星号url pattern的问题 1 3. Other code 1 4. 参考 2 1. ...

  9. 地图源改变之后mxd文件打开很慢的问题

    在使用ArcGIS开发电子地图程序时,有时候需要更换服务器地址,这时打开MXD文件就会非常慢,一直没有找到有效的方法,下面是从网上搜到的方法,还没有验证,下次再碰到这个问题的时候,验证一下: (以下方 ...

  10. 在ArcGIS空间数据库中增加点数据的方法

    1.新建一个mxd(ArcMAP)文件 2.从ArcCatalog中把要编辑的图层拖到ArcMAP中 3.从ArcCatalog中拖一个参照图层到ArcMAP中,比如临沂市的县级区划图 4.打开Edi ...