问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

如何给Domino登陆界面增加验证码

发布网友 发布时间:2023-01-01 17:44

我来回答

2个回答

热心网友 时间:2023-10-30 16:39

index前台:

<div>
<table style="width: 100%;">
<tr>
<td>
用户名:</td>
<td>

<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
</td>
</tr>
<tr>
<td>

密码:</td>
<td>

<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
</td>
</tr>
<tr>
<td>
验证码:
</td>
<td>
<asp:TextBox ID="TextBox3" runat="server"></asp:TextBox>

<img id="yzm" src="pic.aspx" Xonclick="this.src='pic.aspx?aaa='+new Date()" />
</td>
</tr>

<tr>
<td>

<asp:Button ID="btnLog" runat="server" Xonclick="btnLog_Click" Text="登录" />
</td>
<td>

<asp:Button ID="btnCancle" runat="server" Text="取消" />
</td>
</tr>
</table>
</div>

index后台:

protected void btnLog_Click(object sender, EventArgs e)
{
if (TextBox1.Text.Trim() == "admin" && TextBox2.Text.Trim() ==
"888888" && Session["YZM"].ToString() == TextBox3.Text.Trim())
{
Response.Write("登录成功!!");
}
else
{
Response.Write("登录失败!!");
}
}

验证码后台:

protected void Page_Load(object sender, EventArgs e)
{
System.Drawing.Image img = new Bitmap(190,50);
Graphics g = Graphics.FromImage(img);
this.AddPoint(img,100);
string code = this.GeneralCode();
Session["YZM"] = code;
Font font1 = new Font("宋体",40,FontStyle.Italic);
g.DrawString(code, font1, Brushes.Red,0,0);
this.Response.Clear();
MemoryStream ms = new MemoryStream();
img.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);
this.Response.BinaryWrite(ms.ToArray());
this.Response.Flush();
this.Response.End();

}
private void AddPoint(System.Drawing.Image img, int nums)//加噪点背景
{
Bitmap b = img as Bitmap;
Random ran = new Random();
for (int i = 0; i < nums; i++)
{
b.SetPixel(ran.Next(0,img.Width),ran.Next(0,img.Height),Color.White);
}
}
//生成随机的文字
private string GeneralCode()
{
Random ran = new Random(DateTime.Now.Millisecond);
StringBuilder sb = new StringBuilder(6);
for (int i = 0; i < 6; i++)
{
sb.Append(ran.Next(0,9));
}
return sb.ToString();
}

注册页后台

public partial class zhuce : System.Web.UI.Page, IRequiresSessionState //注意要继承这个类
{
protected void Page_Load(object sender, EventArgs e)
{

}
}

一般处理程序后台

public class YZM : IHttpHandler, IRequiresSessionState //注意要继承这个类
{

public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "image/jpeg";
//建立Bitmap对象,绘图
Bitmap basemap = new Bitmap(150, 60);
Graphics graph = Graphics.FromImage(basemap);
graph.FillRectangle(new SolidBrush(Color.SkyBlue), 0, 0, 160, 60);
Font font = new Font(FontFamily.GenericSerif, 30, FontStyle.Bold, GraphicsUnit.Pixel);
Random r = new Random();
string letters = "ABCDEFGHIJKLMNPQRSTUVWXYZ";
string letter;
StringBuilder sb = new StringBuilder();

//添加随机的五个字母
for (int x = 0; x < 5; x++)
{
letter = letters.Substring(r.Next(0, letters.Length - 1), 1);
sb.Append(letter);
graph.DrawString(letter, font, new SolidBrush(Color.Tomato), x * 20, r.Next(0, 15));
}

//混淆背景
Pen linePen = new Pen(new SolidBrush(Color.Tomato), 2);
for (int x = 0; x < 6; x++)
graph.DrawLine(linePen, new Point(r.Next(0, 170), r.Next(0, 40)), new Point(r.Next(0, 170), r.Next(0, 40)));

//将图片保存到输出流中
basemap.Save(context.Response.OutputStream, ImageFormat.Gif);
context.Session["CheckCode"] = sb.ToString(); //如果没有实现IRequiresSessionState,则这里会出错,也无法生成图片
context.Response.End();
}

public bool IsReusable
{
get
{
return false;
}
}
}

热心网友 时间:2023-10-30 16:39

SSO
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
关于后悔药的寓言故事 北京联合大学校区有几个 什么是数码相机的快门优先模式 什么叫快门优先 慢性浅表性胃炎伴糜烂一天吃四顿饭是什么症状 火影忍者 火影忍者手游有土豪账号吗? 谁可以借我玩玩火影忍者手游的账号 电厂三班倒是什么 2022年1月1日起,纳税信用修复有新规 如何写出优雅的分段函数:再谈MATLAB函数句柄 颇有文采的意思? 檀香架子怎么安装 梦见她人假死 梦见死了的人是假死 梦见人假死了 梦见别人假死 梦见喜欢的人假死 梦见朋友假死 梦见故友假死 梦见别人掉进下水道淹死 汽车前挡风玻璃价格?更换前挡风玻璃多少钱 ? 挡风玻璃修复多少钱? 汽车前挡风玻璃修复多少钱 梦见旧的指甲脱落剩下新的 梦见老指甲下面有新指甲 梦见指甲断了长了新的 梦见指甲断了又长出新的了 梦见指甲掉了又长出新的 梦见指甲脱落又长出新的了 梦见趾甲掉又长出新的 梦见好多仙人球一类的花 梦见仙人球 梦见仙人球开了两朵粉色得花 梦见仙人球开了两朵粉色花 梦见白色仙人球 梦见彩色仙人球 梦见外地回家办葬礼 梦见和表哥谈恋爱 梦见和表哥恋爱 梦见和自己的表哥谈恋爱了 梦见与表哥恋爱 梦见和表哥谈恋爱谈生子 梦见和朋友摘水果 梦见和别人摘水果各人一个 梦见和男朋友一起摘果子吃 梦见男女一起摘苹果 梦见和女朋友摘红果子吃 梦见和奶奶摘水果 梦见与贵人一起吃饭 梦见和老哥一起吃饭