生成彩色验证码图片,然后在验证码类中输入如下代码,输入这段代码 验证码,code = (char)('0' + (char)(rand % 10)) 有97%新玩家认为c 验证码识别 源码()值得一读!
{image}
4条解答一.c Winform 实现登录界面验证码功能文末附源码
闲来无事,最近自己发现自己的验证码功能还没有写过。于是就写下了这篇文章 。
界面就比较丑了 ,一个picturebox,一个textbox,一个button按钮主要想的是先把功能实现了 ,万一以后业务上需要使用呢。
实现以后的功能图
在文本框中输入对应文字,点击确定来验证,正确时候如图所示
如果验证失败 ,没有提示,直接更新验证码,当然需要使用的时候根据业务逻辑尺竖大来就是了 ,这个就比较简单了。
第一:生成验证码字符串,用到的是Random随机函数
第二:将该字符串画在picturebox中陵竖
第三点击图片,刷新验证码
第四验证验证码不区分大小写
或者区分大小写
此时完成
源码:
using System;
using ;
using Model;
using ;
using ;
using ;
using ;
using ;
namespace suijima
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
//验证码的长度
private const int iVerifyCodeLength = 6;
//验证码
private String strVerifyCode = "";
//匹配字符的临时变量
string strTemp = ""纤禅;
private void btnUpdate_Click(object sender, EventArgs e)
{
UpdateVerifyCode();
}
private void Form1_Load(object sender, EventArgs e)
{
UpdateVerifyCode();
}
//更新验证码
private void UpdateVerifyCode()
{
strVerifyCode = CreateRandomCode(iVerifyCodeLength);
if(strVerifyCode=="")
{
return;
}
strTemp = strVerifyCode;
CreateImage(strVerifyCode);
}
//生成验证码字符串
private string CreateRandomCode(int iLength)
{
int rand;
char code;
string randomCode = ;
//生成一定长度的验证码
random = new Random();
for (int i = 0; i < iLength; i++)
{
rand = ();
if (rand % 3 == 0)
{
code = (char)('A' + (char)(rand % 26));
}
else
{
code = (char)('0' + (char)(rand % 10));
}
randomCode += ();
}
return randomCode;
}
/// 创建验证码图片
private void CreateImage(string strVerifyCode)
{
try
{
int iRandAngle = 45; //随机转动角度
int iMapWidth = (int)( * 21);
Bitmap map = new Bitmap(iMapWidth, 28); //创建图片背景
Graphics graph = (map);
();//清除画面 ,填充背景
ngle(new Pen(, 0), 0, 0, - 1, - 1);//画一个边框
Mode = ;//模式
Random rand = new Random();
//背景噪点生成
Pen blackPen = new Pen(, 0);
for (int i = 0; i < 50; i++)
{
int x = (0, );
int y = (0, );
ngle(blackPen, x, y, 1, 1);
}
//验证码旋转 ,防止机器识别
char[] chars = ay();//拆散字符串成单字符数组
//文字距中
StringFormat format = new StringFormat();
= ;
ment = ;
//定义颜色
Color[] c = { , , , ,
, , , };
//定义字体
string[] font = { "Verdana", "Microsoft Sans Serif", "Comic Sans MS", "Arial", "宋体" };
for (int i = 0; i < ; i++)
{
int cindex = (7);
int findex = (5); Font f = new (font[findex], 13, );//字体样式(参数2为字体大小)
Brush b = new h(c[cindex]);
Point dot = new Point(16, 16);
float angle = (-iRandAngle, iRandAngle);//转动的度数
Transform(dot.X, dot.Y);//移动光标到指定位置
nsform(angle);
g(chars[i].ToString(), f, b, 1, 1, format);
nsform(-angle);//转回去
Transform(2, -dot.Y);//移动光标到指定位置
}
= map;
}
catch (ArgumentException)
{
("创建图片错误 。");
}
}
private void button1_Click(object sender, EventArgs e)
{
//验证大小写
char[] ch1 = ay();
char[] ch2 = ay();
int nCount = 0;
for (int i = 0; i < ;i++ )
{
if((ch1[i]>='a'&&ch1[i]<='z')||(ch1[i]>='A'&&ch1[i]<='Z'))
{
if (ch1[i] - 32 == ch2[i] || ch1[i] + 32 == ch2[i])
{
nCount++;
}
}
else
{
if (ch1[i]==ch2[i])
{
nCount++;
}
}
}
if (nCount==)
{
("验证通过");
}
else
{
UpdateVerifyCode();
= "";
}
////不能验证大小写
//if(==strTemp)
//{
// ("验证通过");
//}
//else
//{
// UpdateVerifyCode();
// = "";
//}
}
///
/// 图片点击事件
///
///
///
private void pictureBox1_Click(object sender, EventArgs e)
{
UpdateVerifyCode();
}
}
}
二.用C语言编写一个密码验证程序
//用户信息数据结构typedef struct{ long number; //用户编号 6位 char name[20]; //用户名 char password[8]; //用户密码 int power; //权限判断 1 为管理员2为普通用户 }user;user yh[100]={,"gavin","gavine",1,,"wnag","wangf",2}; 密码验证后,让这个结构体里的gavin为管理员,及返回值为1 ,wang为普通用户,即反值为2;#include
include
typedef struct
{
long number; //用户编号 6位
char name[20]; //用户名
char password[8]; //用户密码
int power; //权限判断 1 为管理员2为普通用户
} user;
user yh[100]={,"gavin","gavine",1,,"wnag","wangf",2};
int length = 2;
int checkuser(long num, const char nm, const char pwd)
{
int i;
for (i = 0; i < length; ++i)
{
if (yh[i].number == num && !strcmp(yh[i].name, nm) && !strcmp(yh[i].password,
pwd))
{
if (1==yh[i].power)
return 1;
else
return 2;
}
}
}
void main()
{
printf("%d\n", checkuser(, "gavin", "gavine"));
}
三.登录时如何产生验证码
网上有很多源代码,搜索一下可以搜索出很多版本用随机数产生数字或者字母组合不就成了?先用变量保存一下 ,然后等待输入并判定。判定不符,重新生成。如此循环……
四.获取验证码代码怎么写
问题一:jsp中显示验证码的代码怎么写? import ;import ;import ;import mage;import on;import eam;import ;import ;/生成验证码图片/public class MakeCertPic { 验证码图片中可以出现的字符集,可以根据需要修改 private char mapTable[]={ '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','0','1','2','3', '4','5','6','7','8','9' };/ 功山乎能:生成彩色验证码图片 参数wedth为生成图片的宽度 ,参数height为生成图片的高度,参数os为页面的输出流/ public String getCertPic(int width,int height,OutputStream os){ if(width>
问题二:验证码的html怎么写 JS生成验证码.code {background-image: url();font-family: Arial;font- style: italic;color: Red;border: 0;padding: 2px 3px;letter-spacing: 3px;font- weight: bolder;}.unchanged {border: 0;} var code; 在全局 定义验证码 function createCode() { code = ; var codeLength = 6;验证码的长度 var checkCode = tById(checkCode); var selectChar = new Array(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');所有候选组成验证码的字符,当然也可以用中文的 for (var i = 0; i >
问题三:获取到了手机验证码的代码怎么写 按照验证码写上去
问题四:php 怎么获取验证码的值 ,接着怎么写 验证码一般都保存在session中,打印一下session的值,就能看到验证码对应的字段、值;
dump($_SESSION);
问题五:如何用html编写产生验证码
html是无法写出来的 ,需要一种动态脚本来写例如jsp、php 、asp、aspx、c#都可以实现 ,不过服务器需要有解析脚本的功能才可以做动态站点,不知道你网站是用什么语言
麻烦采纳,谢谢!
问题六:验证码怎么写 先建立逗态悉一个网页;然后在你的注册页面下面:输入这段代码 验证码: 这段代码是为了在注册页面显示四位数的 验证码!然后在验证码类中输入如下代码:using System; using ; using tion; using System 。
问题七:java 登录验证码代码怎么写 原理: 1.随机生成4个数字 用到了Random类 2.对这4个数字设置字体格式 用 setFont方法 3.改变字体颜色用setColor 然后随机生成颜色 代码如下 package s1; import ; import ; import ; import java.a
问题八:ios 登录界面注册和获取验证码怎么做 可以参考下面的例子:
新建一个项目
现在xcode新建的项目都是自带故事板的 ,操作不是很方便,我们来把它改成说写代码
打开AppDelegate.h文件,添加以下代码
- (BOOL)application:(UIApplication )application
didFinishLaunchingWithOptions:(NSDictionary )launchOptions { =[[UIWindow
alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
ontroller=[[ViewController alloc] init]; [ makeKeyAndVisible]; return YES; }
到此就完成了手写代码的第一步。
添加输入框和按钮
在ViewController.h中添加以下代码
import ViewController.h
@interface ViewController ()
@property (nonatomic,strong) UITextField account;
@property (nonatomic,strong) UITextField password;
@property (nonatomic,strong) UIButton *loginButton;
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
[ setBackgroundColor:[UIColor colorWithRed:51/255.0 green:204/255.0
blue:255/255.0 alpha:1]];
_account=[[UITextField alloc] initWithFrame:CGRectMake(20, 200, -40, 50)];
_dColor=[UIColor whiteColor];
_er=[NSString stringWithFormat:@Email];
[ addSubview:_account];
_password=[[UITextField alloc] initWithFrame:CGRectMake(20, 260, -40, 50)];
_dColor=[UIColor whiteColor];
_er=[NSString stringWithFormat:@Password];
[ addSubview:_password];
_loginButton=[UIButton buttonWithType:UIButtonTypeRoundedRect];
[_loginButton setFrame:CGRectMake......>>
问题九:html获取验证码这个按钮的代码 直接插入一个input就行了 ,这个input没加什么样式,最多就是加了一个宽和高的定义吧。
刚试验了一下,宽和高都没加
问题十:网页中验证码代码怎么写啊 我举个的验证码产生的代码 ,你可以看看: 新建文件,写入一下代码: using System; using ns; using tion; using ; using ; using ; using ; using ; using ols; using ls; using ; using ; using ; public partial class yanzhengma : { private eam ms = eam(); protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { yanzhengmayzm = new yanzhengma(); Session[code1] = ge(5, ); } } / / 验证码的类型 / public enum ValidType { / / 只有数字 / Numeric, / / 数字和英文字符 / NumericAndEnglishChar, / / 中文字符 / ChineseChar } / / 生成一个随机文字图片,保存在 Session[code1] / / 图片中字的个数 / 生成的文字 public string CreateImage(int count, ValidType type) { string ValidCode = GenCode(count,type); switch (type)......>>