Asp.Net2.0下C#环境 Login控件实现用户登录
原文:Asp.Net2.0下C#环境 Login控件实现用户登录
一、前台显示效果

二、前台代码
<asp:Login ID="Login1" runat="server" BackColor="#F7F7DE" BorderColor="#CCCC99" BorderStyle="Solid"
BorderWidth="1px" Font-Names="Verdana" Font-Size="10pt" OnAuthenticate="Login1_Authenticate">
<TitleTextStyle BackColor="#6B696B" Font-Bold="True" ForeColor="White" />
<LayoutTemplate>
<table border="0" cellpadding="1" cellspacing="0" style="border-collapse: collapse">
<tr>
<td>
<table border="0" cellpadding="0">
<tr>
<td align="center" colspan="2" style="font-weight: bold; color: white; background-color: #6b696b">
用户登录</td>
</tr>
<tr>
<td align="right">
<asp:Label ID="UserNameLabel" runat="server" AssociatedControlID="UserName">用户名:</asp:Label></td>
<td>
<asp:TextBox ID="UserName" runat="server" CssClass="STYLE1"></asp:TextBox>
<asp:RequiredFieldValidator ID="UserNameRequired" runat="server" ControlToValidate="UserName"
ErrorMessage="必须填写“用户名”。" ToolTip="必须填写“用户名”。" ValidationGroup="Login1">*</asp:RequiredFieldValidator>
</td>
</tr>
<tr>
<td align="right">
<asp:Label ID="PasswordLabel" runat="server" AssociatedControlID="Password">密码:</asp:Label></td>
<td>
<asp:TextBox ID="Password" runat="server" TextMode="Password" CssClass="STYLE1"></asp:TextBox>
<asp:RequiredFieldValidator ID="PasswordRequired" runat="server" ControlToValidate="Password"
ErrorMessage="必须填写“密码”。" ToolTip="必须填写“密码”。" ValidationGroup="Login1">*</asp:RequiredFieldValidator>
</td>
</tr>
<tr>
<td align="right">
<asp:Label ID="Label1" runat="server" AssociatedControlID="Password">验证码:</asp:Label></td>
<td>
<asp:TextBox ID="GetCode" runat="server" CssClass="STYLE2"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="Password"
ErrorMessage="必须填写“验证码”。" ToolTip="必须填写“验证码”。" ValidationGroup="Login1">*</asp:RequiredFieldValidator><asp:Image ID="Image1" runat="server" ImageUrl="~/include/GetValidate.aspx" ImageAlign="Top"
alt="看不清?点击更换" onclick="this.src=this.src+'?'" />
</td>
</tr>
<tr>
<td align="center" colspan="2" style="color: red">
<asp:Literal ID="FailureText" runat="server" EnableViewState="False"></asp:Literal>
</td>
</tr>
<tr>
<td align="center" colspan="2">
<asp:Button ID="LoginButton" runat="server" CommandName="Login" Text="登录" ValidationGroup="Login1" /></td>
</tr>
</table>
</td>
</tr>
</table>
</LayoutTemplate>
</asp:Login>三、后台代码
protected void Login1_Authenticate(object sender, AuthenticateEventArgs e)
{
TextBox GetCode = Login1.FindControl("GetCode") as TextBox;//获取登陆控件中验证码文本框值
if (Request.Cookies["CheckCode"].Value == null)
{
Response.Write(@"<script language=JavaScript>{window.alert('您的浏览器设置已被禁用 Cookies,您必须设置浏览器允许使用 Cookies 选项后才能使用本系统!');}</script>");
return;
}
else
{
)
{
Response.Write(@"<script language=JavaScript>{window.alert('验证码输入不正确!');}</script>");
return;
}
string UserLoginID = Login1.UserName.ToString().Trim().Replace("'", "").Replace("=", "");//得到输入的用户名
string UserLoginPwd = Login1.Password.ToString().Trim().Replace("'", "").Replace("=", "");//得到输入的密码
//得到md5值
string md5Pwd = System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(UserLoginPwd, "md5").ToLower();
string mySql = "select * from [User] where [sLoginID]='" + UserLoginID + "' and [LoginPWD]='" + md5Pwd + "'";
//下面部署自己的逻辑处理,以下仅供参考
DBConn myDB = new DBConn();
try
{
SqlDataReader Rs = myDB.getDataReader(mySql);
if (!Rs.Read())
{
e.Authenticated = false;//登录不通过
}
else
{
Session["UserLoginID"] = UserLoginID;
Session["UserLoginPwd"] = UserLoginPwd;
e.Authenticated = true;//登录通过
Response.Redirect("index.aspx");
}
}
catch (Exception ex)
{
Response.Write("数据库错误,错误原因:" + ex.Message);
Response.End();
}
}
}四、关于验证码可以本Blog的随笔中找到,地址为:
http://www.cnblogs.com/zm235/archive/2006/10/02/520233.htmlAsp.Net2.0下C#环境 Login控件实现用户登录的更多相关文章
- login控件“您的登录尝试不成功。请重试”的解决方法
原文:login控件"您的登录尝试不成功.请重试"的解决方法 遇到login控件“您的登录尝试不成功.请重试”报错之后,在网上找了很久,也按照如下帖子设置了 application ...
- asp.net2.0安全性(4)--Login系列控件--转载来自车老师
前面主要说了与安全相关的一系列的类,现在我们使用这些类就可以做出我们自己的安全系统了.其实微软的目的远不至于此,下面我们就来看一下微软为我们提供的Login系列控件. Login系列控件是微软为了简化 ...
- ASP.NET2.0组件控件开发视频 初体验
原文:ASP.NET2.0组件控件开发视频 初体验 ASP.NET2.0组件控件开发视频 初体验 录了视频,质量不是很好,大家体验下.我会重新录制的 如果不清楚,可以看看http://v.youku. ...
- ASP.NET2.0自定义控件组件开发 第六章 深入讲解控件的属性
原文:ASP.NET2.0自定义控件组件开发 第六章 深入讲解控件的属性 深入讲解控件的属性持久化(一) 系列文章链接: ASP.NET自定义控件组件开发 第一章 待续 ASP.NET自定义控件组件开 ...
- asp.net用户身份验证时读不到用户信息的问题 您的登录尝试不成功。请重试。 Login控件
原文:asp.net用户身份验证时读不到用户信息的问题 您的登录尝试不成功.请重试. Login控件 现象1.asp.net使用自定义sql server身份验证数据库,在A机器新增用户A,可以登录成 ...
- ASP.NET关于Login控件使用,LoginView 控件,CreateUserWizard 控件
原文:ASP.NET关于Login控件使用,LoginView 控件,CreateUserWizard 控件 Login控件它是属于Membership服务的一部分,必须配置Membership提供程 ...
- ASP.NET关于Login控件使用 (转)
分类: C# 2011-02-21 10:38 4599人阅读 评论(0) 收藏 举报 loginasp.netstringurlserverbutton 今天上网找了一些关于Login控件的使用资料 ...
- 关于asp:login控件和验证码的问题?(转)
1.验证码页面添加.2.将这验证码页面添加到login控件中:拖曳一Login控件,将之切换到模式下,在Html源文件中在表格中密码那行后添加: <tr> <td style= ...
- asp.net2.0安全性(3)--验证与授权--转载来自车老师
"验证"与"授权"是对网页资源安全管理的两道门. 验证(Authentication):检查用户是否是合法的用户.就像是网站大门口的保卫,服责验证使用的用户名和 ...
随机推荐
- asp.net检查服务器上目录或文件是否存在示例
原文 asp.net检查服务器上目录或文件是否存在示例 asp.net为我们提供了文件系统对象了,对于目录与文件判断是否存在我们有System.IO.File.Exists与System.IO.Dir ...
- gcc中__attribute__ ((constructor(101)))做成.a库成功链接
1.cpp:------------------------------------------------ #include int test() __attribute__ ((construct ...
- hdu 4707 搜索 目前做的最水的搜索
直接深搜 ,水啊 #include<cstdio> #include<cstring> #include<algorithm> using namespace s ...
- QNX 多线程 (线程1每隔20ms读取 number;线程2每隔10ms计算一次)
#include <pthread.h>#include <stdio.h>#include <sys/time.h>#include <string.h&g ...
- Lucene.Net 2.3.1开发介绍 —— 三、索引(六)
原文:Lucene.Net 2.3.1开发介绍 -- 三.索引(六) 2.2 Field的Boost 如果说Document的Boost是一条线,那么Field的Boost则是一个点.怎么理解这个点呢 ...
- Multiplepack coming~^.^
多重背包: 基本思路: 先来看一个引例:有N种物品和一个容量为V的背包.第i种物品最多有n[i]件可用,每件费用是c[i],价值是w[i].求解将哪些物品装入背包可使这些物品的费用总和不超过背包容量, ...
- OCA读书笔记(8) - 管理用户安全
创建用户:create user +用户 default tablespace + 表空间名 identified + 验证方式 SQL> create user easthome profil ...
- ntohs, ntohl, htons,htonl的比较和详解
在C/C++写网络程序的时候,往往会遇到字节的网络顺序和主机顺序的问题. 这时就可能用到htons(), ntohl(), ntohs(),htons()这4个网络字节顺序与本地字节顺序之间的转换函数 ...
- 微信公众平台应用开发框架sophia设计不足(1)
设计一个小框架考虑的东西真不少,每一样都不easy: 1.既要解决当前技术的不足: 2.又要方便他人使用(基本的目的). 3.同一时候又要设计得优雅.easy扩展. sophia一開始设计用来支持智能 ...
- 仿ios版微信应用源代码
仿微信基本功能. 基于XMPPserver的即时通信以及交友client. ----第一期代码的功能例如以下---- 1.新用户注冊 2.登陆并连接XMPPserver 握手 保持 ...