ASP.net验证码
快过年,好久没写什么东西了。不知道最近是太忙了,还是自己有点懒,写些自己积累的东西。都是些最基本的应用,和大家分享下。
验证码在很多地方多用到,网上各种形形色色的代码页很多了,我就是打发点时间写写了。
原理:通过GUI+生成有四个数字的图片,将四个数字存放到Session中,然后通过验证你输入的验证码和Session中的是否一致,达
到验证的效果。
扩展下,这里是四个数字的,如果需要那种汉字,英文字母还有数字夹杂在一起的那种我没有做过,不知道是通过程序去生成汉字和英
文字母。但是如果让我做的话,可以建立一个库(文件,数据库,还是最简单的一个数组)存放些汉字,英文字母。随机抽取出来生成。
就可以实现了。还有就是这个生成出来的图片是50*22像素的的,如果你要生成出更大或者小点的,需要修改下程序。没有做到通用是
我的罪过。。。
生成验证码图片:
CodeImg.aspx.cs文件
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="CodeImg.aspx.cs" Inherits="Purdue.CRM.Web.inc.CodeImg" %>
CodeImg.cs文件
using System;
using System.Collections;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
namespace Purdue.CRM.Web.inc
{
public partial class CodeImg : System.Web.UI.Page
{
public static String realCode="";
protected void Page_Load(object sender, EventArgs e)
{
//调用函数将验证码生成图片
this.CreateCheckCodeImage(GenerateCheckCode());
}
private string GenerateCheckCode()
{
//产生四位的随机字符串
int number;
char code;
string checkCode = String.Empty;
System.Random random = new Random();
for (int i = 0; i < 4; i++)
{
number = random.Next();
code = (char)('0' + (char)(number % 10));
checkCode += code.ToString();
相关文档:
一、三层体系架构 1.表示层(USL):主要表示WEB方式,也可以表示成WINFORM方式。如果逻辑层相当强大和完善,无论表现层如何定义和更改,逻辑层都能完善地提供服务。
2.业务逻辑层(BLL):主要是针对具体的问题的操作,也可以理解成对数据层的操作,对数据业务逻辑处理。如果说数据层是积木,那逻辑层就是对这些积木的 ......
ASP.Net的validateRequest=false
validateRequest="false" 指是否要IIS验证页面提交的非法字符,比如:>,<号等,当我们需要将一定格式得html代码获得,插入数据库时候,就要将这个属性设置为false,例如你将字体加粗等操作时。
ASP.Net 1.1后引入了 ......
这篇教程探讨ASP.NET MVC控制器,控制器action和action result。完成此教程后,你会懂得控制器如何被用来控制访问者与ASP.NET MVC网站的交互方式。
理解控制器
MVC 控制器负责对ASP.NET MVC网站的请求作出回应。每一个浏览器请求都被映射到一个特定的控制器。例如,想象你在浏览器地址栏输入以下URL:
http://localhost/P ......
做了几年的ASP.NET,积累了不少小技巧。但是技巧只适合于特定的环境,还不如加强对基础知识的理解与运用。下面是我的一点体会,与大家分享。
1 母版页
这个控件可以使我忘记html的iframe之类的页面框架方案,还有frameset.
asp开发中还支持<#include file=”head.asp>
现在有母版页可以轻松的以.NET的方式 ......
在Web应用程序上下文中,ASP.NET页面会在第一次被请求时,按需被动态编译。动态编译并不是ASP.NET页面(.aspx文件)特有的,还发生在.NET Web服务(.asmx文件)、Web用户控件(.ascx文件)、HTTP处理程序(.ashx文件),以及其他几种ASP.NET应用程序文件(如global.asax文件)身上。运行时管道模型负责处理输入的(incoming)HTTP数据包 ......