asp.net生成验证码

ASP.NET生成验证码 首先,添加一个一般处理程序 注释很详细了,有不懂的欢迎评论 using System; using System.Collections.Generic; using System.Drawing; using System.Linq; using System.Web; using System.Web.SessionState; namespace Project_Practice { ... 阅读详情
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Drawing;
using System.Text;
public partial class AJAX_RandomJpgSample : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (Session["MyCheckCode"] == null)
            Session["MyCheckCode"] = "";
        GenerateCheckCode();
    }
    /// <summary>
    /// 产生随机数
    /// </summary>
    /// <returns></returns>
    private void GenerateCheckCode()
    {
        StringBuilder strS = new StringBuilder();
        string strTmp = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
char[] str = strTmp.ToCharArray();
        //string[] str ={ "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "0", "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" };
        Random rn = new Random();
        int len = rn.Next(4, 6); //随即生成4或5,用来控制验证码的长度
        Random ran = new Random();
        //设置图片输出格式
        Response.ContentType = "image/gif";
        Bitmap b = new Bitmap(85, 28);
        Graphics g = Graphics.FromImage(b);
        g.FillRectangle(new SolidBrush(Color.YellowGreen),0,0,140,30);
        Font font = new Font(FontFamily.GenericSansSerif, 18, FontStyle.Bold, GraphicsUnit.Pixel);
        for (int i = 0; i < len; i++)
        {
            strS.Append(str[ran.Next(0,35)]);
            //绘出生成的随机数
            g.DrawString(strS[strS.Length - 1].ToString(), font, new SolidBrush(Color.Blue), i * 15, ran.Next(0, 4));
        }
        //生成干扰条
        Pen pen = new Pen(new SolidBrush(Color.Blue), 1);
        for (int i = 0; i < 10; i++)
        {
            g.DrawLine(pen, new Point(ran.Next(0, 199), ran.Next(0, 59)), new Point(ran.Next(0, 199), ran.Next(0, 15)));
        }
        b.Save(Response.OutputStream, System.Drawing.Imaging.ImageFormat.Gif);
        this.Session["MyCheckCode"] = strS.ToString();
        Response.End();
    }
    /// <summary>
    /// 客户端验证用户输入验证码是否正确
    /// </summary>
    /// <param name="checkCode"></param>
    /// <returns></returns>
    public static bool CheckCode(string checkCode)
    {
        string txt = System.Web.HttpContext.Current.Session["MyCheckCode"] as string;
        return checkCode == txt;
    }
}


客户端使用.aspx
<img id="img4" src="RandomJpgSample.aspx" onclick="javascript:this.src='RandomJpgSample.aspx?'+Math.random()" |"ShowNew()"/>
.aspx.cs
if (AJAX_RandomJpgSample.CheckCode(trace.Text.Trim()))
            Response.Write("验证通过");
因为web窗体(包括.aspx和.aspx.cs文件,其中.aspx继承自.aspx.cs)是一个类,所以在其它窗体可以直接使用类名调用其静态方法,但是没有IDE的智能提示支持。
单击图片刷新验证码
<script type="Text/javascript">
    function ShowNew(){
     var img1=document.getElementById("img3");
     img1.src="RandomJpgSam.aspx?"+Math.random();
    }
    </script>
输入一个日期判断是一年中的第几天
void Calc()
{
    int num[2][12]={{31,28,31,30,31,30,31,31,30,31,30,31},{31,29,31,30,31,30,31,31,30,31,30,31}};
    int day,month,year,leap,i,sum=0;
    printf("\nPlease input year,month,day:");
    scanf("%d,%d,%d",&year,&month,&day);
    if(year%400==0||year%4==0&&year%100!=0)
       leap=1;
    else
       leap=0;
    if(month>12||month<0)
    {
       printf("Error\n");
    }
    else
    {
       if(day>num[leap][month-1])
           printf("Error\n");
       else
       {
           for(i=0;i<month-1;i++)
           {
           sum+=num[leap][i];
           }
           sum+=day;
           printf("It is the %dth day of %d\n",sum,year);
       }
    }
}


ASP.NET验证码的生成 新建一个类用来创建验证码代码如下: using System; using System.Collections.Generic; using System.Drawing; using System.Drawing.Drawing2D; using System.Drawing.Imaging; using System.IO; using System.Linq; using System.T... 阅读详情

相关推荐

ASP.NET C#实践:生成优化的图形验证码

在ASP.NET应用中,我们可以使用C#编写代码来生成优化的图形验证码。在ASP.NET应用中,我们可以使用C#编写代码来生成优化的图形验证码。通过以上步骤,我们就可以在ASP.NET应用中实现生成和显示图形验证码的功能了ASP.NET C#实践:生成优化的图形验证码。通过以上步骤,我们就可以在ASP.NET应用中实现生成和显示图形验证码的功能了。最后,我们将生成的图片保存为PNG格式,并转换为Base64字符串。最后,我们将生成的图片保存为PNG格式,并转换为Base64字符串。

2301_79365003的博客 229

ASP.Net随机生成验证码

//首先创建一个页面ValidateCodePage: //创建Random的实例 Random rand=new Random(); protected void Page_Load(object sender,EventArgs e){ //调用该方法实现的事数字和字符独立的效果 //string str=getRandomValidate(4); //调用该方法实现的事验证码中数

bingxueer0702的专栏 1979

ASP.NET验证码图片生成器源代码

图像转换技术是验证码生成中不可或缺的一环,它涉及到位图和矢量图的概念以及图像压缩技术,这些技术对验证码的生成和用户体验都有着直接的影响。

weixin_34598113的博客 953

ASP.NET MVC生成随机验证码

ASP.NET MVC生成随机验证码 在ASP.NET MVC项目中验证码验证是缺少不了的,下面我们来了解项目生成验证码的流程和操作。 首先我们生成一个实体类里面放置着封装好的一些随机生成验证码的方法: 代码如下: public static class ValidCodeUtils { /// <summary> ///...

weixin_44539055的博客 949

DFT知识点扫盲——DFT scan chain

实际在项目中synccell一般直接上ULVT,既然是SDF,就是带Scan接口的DFF,SN (set negtive)是低置位,RP(reset positive)是高复位,既没有SN也没有RP的就是无复位寄存器。1:定义:满足可测试性设计(DFT),将设计中所有的触发器连接到一条或者若干条链上,称为scan chain,将一个复杂的时序电路转换为简单的组合电路进行测试,这一步是在逻辑综合(DC)中实现。当SE=1当SI=1时,电路进入scan状态,当SI=0时,电路工作在normal状态。

笨蛋大乌龟的博客 4933

Autodesk软件网络授权破解

Autodesk 全系列产品网络授权破解 此网络许可授权破解文件及方法适用Autodesk 绝大部分的产品, 安装网络许可证管理器Autodesk网络许可证管理器x64位官方下载地址( https://knowledge.autodesk.com/sites/default/files/file_downloads/nlm11.14.1.3_ipv4_ipv6_win64.msi ) Autod...

weixin_33919950的博客 8253

asp.net生成验证码图片

<!--var theForm = document.forms[MyForm];if (!theForm) { theForm = document.MyForm;}function __doPostBack(eventTarget, eventArgument) { if (!theForm.onsubmit || (t

zgh2002007的专栏 1294

ASP.NET 生成随机验证码

我一直觉得用第三方控件生成的验证码太花了,用户体验不好,有的很难看清楚到底是什么,还是那种比较清楚一点的给人的感觉好点。 /// <summary> /// 这个方法用来生成随机验证码 /// </summary> private void ShowCode() { Random ran = new Random();...

weixin_30471065的博客 311

【electron】- 从零到一:在electron-vite项目中集成better-sqlite3的工程化实践

本文详细介绍了在electron-vite项目中集成better-sqlite3数据库的完整工程化实践。针对原生模块的编译挑战,提供了从环境配置、路径规划、服务封装到IPC通信的解决方案,并重点解决了开发与生产环境的数据库路径分离及打包部署等核心问题,帮助开发者构建稳定高效的Electron桌面应用数据层。

weixin_29306571的博客 202

openEuler 欧拉 安装Oracle19c数据库RPM包安装

欧拉系统安装部署oracle 19c rpm方式

陈苏漾的IT生涯 6891

asp.net生成验证码并提交验证

一般处理程序(WaterMark.ashx)中代码 using System; using System.Collections.Generic; using System.Drawing; using System.Linq; using System.Web; using System.Web.SessionState; /* * 创建人:张自由 * 时间:2020-09-14 * 用途:随机生成验证码 */ namespace Web.handler { public class

小小张自由—>张有博 2380

全网最详细 解决戴维南定理的详细推导

替代定理,戴维南定理详细证明

m0_52555753的博客 3万+

ASP.net 生成验证码

一.说明 此文是小白在学习张晨光老师的视频教学<<Asp.Net WEB服务器编程技术>>中做的学习笔记,一些知识点也是跟着教程走的,大家也可以去老师的主页去学习,谢谢大家. 二.生成验证码图片(checkcode.aspx.cs) using System; using System.Collections.Generic; using System.Drawing; using System.Drawing.Imaging; using System.IO; using Syst

m0_56227168的博客 1701

面经-2023-联发科MTK-数字芯片设计

面经-2023-联发科MTK-数字芯片设计

w0shishabi的博客 2943

【Win10/11】Windows电脑WiFi显示小地球/断网的解决方法 Windows WiFi小地球、网络连接中断、网络重置、无线网卡驱动、Win10/Win11网络修复

最近经常有粉丝留言问我,Windows 电脑突然连不上 WiFi,右下角网络图标显示成了“小地球 🌐”,或者干脆提示“未连接 - 没有可用的连接”。明明其他设备网络都正常,唯独自己的电脑断了。作为在互联网大厂混迹多年的前端程序员,我自己也碰到过这个问题。总结几种比较常见、亲测有效的解决方法,写出来供大家参考,希望能帮你快速恢复上网!问题原因推荐解决方法系统设置错乱使用网络重置功能驱动异常或冲突卸载后重启自动安装驱动驱动版本过旧手动更新网卡驱动实在不行考虑使用系统还原点或重装系统这几个方法中,

代码简单说 Vue、JAVA、PHP、Node.js 熟练运用,接口、架构、性能全搞定。 3843

ASP.NET Core 生成验证码

点击蓝字关注我使用验证码保护网站免受垃圾信息的选择有很多,比如Google ReCaptcha和captcha.com。这两者都可以整合到ASP.NET Core应用中去...

dotNET跨平台 1707

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

ASP.Net生成简易验证码

创建一个名为ValidateCode.aspx的页面,粘贴以下代码即可Public Class ValidateCode    Inherits System.Web.UI.Page#Region " Web 窗体设计器生成的代码 "    该调用是 Web 窗体设计器所必需的。    Private Sub InitializeComponent()    End Sub

在人间 817

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

asp.net中生成动态验证码代码

//前台 <td align="left"> <asp:Image ID="imgValidateCode" runat="server" ImageUrl="ImageCreate.aspx" Style="cursor:pointer;" onmouseup="RefreshImage()" alt="点击刷新!" /></td> ...

194

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

asp.net 生成验证码

一.前台页面             $(function() {             $("#Image1").click(function() {                 var oldSrc = $(this).attr("src");                 oldSrc += new Date().toString();             

MsdnWoo的博客 649

ASP.NET中动态生成验证码的一则方法

现在不少网站中都使用了验证码的技术,实现方式也是多种多样,这里主要介绍ASP.NET中可以采用的一种动态生成验证码的方法,可能并不十分完美,但实现难度是属于较低的。 该方法是利用了普通的动态图片生成技术,但比较特别的一点是图片的生成是在一个Page类型的子类的Page_Load方法中执行的。所以Response的ContentType为image/Gif,而非text/html。 Graphi

申江渔夫 577

ASP.NET生成N位不同的验证码技术

如何使用ASP.NET编程方式生存N位不同的验证码技术是我们验证码程序员会遇到的一个小小问题。 今天我公司知码网专业技术编程人员就为您提供一份关于ASPNET的验证码生成技术,此技术可以完美解决N位不同验证码的生成技术,使得我们的服务器以及网站能够被很好的保护和与顾客的交互作用。 此段代码并不繁琐,有些ASP.NET语言基础的朋友可以很容易的就理解,主要是从生成随即函数中能够抽取然后进行匹配即

知码的世界 458
上一篇: asp.net生成验证码
下一篇: C# WinForm TableLayoutPanel和FlowLayoutPanel闪烁的解决方案
Kelvin峰
博客等级 码龄22年 23粉丝 15原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值