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. 跟以前一样做界面,只是注意,把所有需要有多语言界面的文字都用label来做
2. 做完以后,在Solution Explorer里选中这个文件,选Tools->Generate Local Resource
3. 你会发现生成了一个目录,App_LocalResources;这个目录里多了一个resx的文件。比如你的aspx文件是default.aspx,它就会生成一个叫做de ......
如果您创建的网页将由使用不同语言的用户阅读,则必须为这些读者提供用他们自己的语言查看网页的方法。一种方法是分别用各语言重新创建页面,但这种方法可能需要大量工作量、容易出错并且在更改原始页时很难维护。ASP.NET 为您提供了一种方法,使用这种方法创建的页可以根据浏览器的首选语言设置或用户显式选择的语言获取内 ......
session
===================================
session对象用于存储特定的用户会话所需的信息 。 Session对象的引入是为了弥补HTTP协议的不足,HTTP协议是一种无状态的协议。
Session中文是“会话”的意思,在ASP中代表了服务器与客户端之间的“会话”。Session的作用时间从用户到达某个特定的 ......
这篇教程探讨ASP.NET MVC控制器,控制器action和action result。完成此教程后,你会懂得控制器如何被用来控制访问者与ASP.NET MVC网站的交互方式。
理解控制器
MVC 控制器负责对ASP.NET MVC网站的请求作出回应。每一个浏览器请求都被映射到一个特定的控制器。例如,想象你在浏览器地址栏输入以下URL:
http://localhost/P ......
在Web应用程序上下文中,ASP.NET页面会在第一次被请求时,按需被动态编译。动态编译并不是ASP.NET页面(.aspx文件)特有的,还发生在.NET Web服务(.asmx文件)、Web用户控件(.ascx文件)、HTTP处理程序(.ashx文件),以及其他几种ASP.NET应用程序文件(如global.asax文件)身上。运行时管道模型负责处理输入的(incoming)HTTP数据包 ......