原文: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.html

Asp.Net2.0下C#环境 Login控件实现用户登录的更多相关文章

  1. login控件“您的登录尝试不成功。请重试”的解决方法

    原文:login控件"您的登录尝试不成功.请重试"的解决方法 遇到login控件“您的登录尝试不成功.请重试”报错之后,在网上找了很久,也按照如下帖子设置了 application ...

  2. asp.net2.0安全性(4)--Login系列控件--转载来自车老师

    前面主要说了与安全相关的一系列的类,现在我们使用这些类就可以做出我们自己的安全系统了.其实微软的目的远不至于此,下面我们就来看一下微软为我们提供的Login系列控件. Login系列控件是微软为了简化 ...

  3. ASP.NET2.0组件控件开发视频 初体验

    原文:ASP.NET2.0组件控件开发视频 初体验 ASP.NET2.0组件控件开发视频 初体验 录了视频,质量不是很好,大家体验下.我会重新录制的 如果不清楚,可以看看http://v.youku. ...

  4. ASP.NET2.0自定义控件组件开发 第六章 深入讲解控件的属性

    原文:ASP.NET2.0自定义控件组件开发 第六章 深入讲解控件的属性 深入讲解控件的属性持久化(一) 系列文章链接: ASP.NET自定义控件组件开发 第一章 待续 ASP.NET自定义控件组件开 ...

  5. asp.net用户身份验证时读不到用户信息的问题 您的登录尝试不成功。请重试。 Login控件

    原文:asp.net用户身份验证时读不到用户信息的问题 您的登录尝试不成功.请重试. Login控件 现象1.asp.net使用自定义sql server身份验证数据库,在A机器新增用户A,可以登录成 ...

  6. ASP.NET关于Login控件使用,LoginView 控件,CreateUserWizard 控件

    原文:ASP.NET关于Login控件使用,LoginView 控件,CreateUserWizard 控件 Login控件它是属于Membership服务的一部分,必须配置Membership提供程 ...

  7. ASP.NET关于Login控件使用 (转)

    分类: C# 2011-02-21 10:38 4599人阅读 评论(0) 收藏 举报 loginasp.netstringurlserverbutton 今天上网找了一些关于Login控件的使用资料 ...

  8. 关于asp:login控件和验证码的问题?(转)

    1.验证码页面添加.2.将这验证码页面添加到login控件中:拖曳一Login控件,将之切换到模式下,在Html源文件中在表格中密码那行后添加: <tr>    <td style= ...

  9. asp.net2.0安全性(3)--验证与授权--转载来自车老师

    "验证"与"授权"是对网页资源安全管理的两道门. 验证(Authentication):检查用户是否是合法的用户.就像是网站大门口的保卫,服责验证使用的用户名和 ...

随机推荐

  1. 基础知识(10)- 部署应用程序和applet

    10.1 JAR文件  10.1.1 清单文件  10.1.2 可运行JAR文件  10.1.3 资源  10.1.4 密封 10.2 Java Web Start  10.2.1 沙箱  10.2. ...

  2. 使用微软Remote Desktop 手机远程控制 windows

    在我的电脑上右击选择“属性”,打开属性面板.然后点击左边的“远程设置”. 2/2 如果你要操作的计算机出入外网(大多数是家里网线进线直连电脑),就选择远程桌面选择框中的“允许运行任意版本远程桌面的计算 ...

  3. 陈年查尔斯们,请考虑下记者们的感受 by 李斌

    http://mp.weixin.qq.com/mp/appmsg/show?__biz=MjM5ODUxNTQwMA==&appmsgid=10000507&itemidx=2&am ...

  4. GotGitHub — GotGitHub

    GotGitHub - GotGitHub GotGitHub

  5. niu人

    金步国简历 金步国简历 基本资料 姓名 金步国 性别 男 年龄 30 籍贯 江苏 淮安 院校 同济大学 专业 土木工程 学历 本科肄业 工作经验 5年 期望地点 长江以南 期望薪水 18000/月 个 ...

  6. SilkTest Q&A 4

    Q31.如何在inc文件里面写函数? A31.在你在inc文件(例如demo.inc)里写好函数以后,你需要使用Use path/Use file来指定指定它们. 在SilkTest中->Opt ...

  7. objective-c 中数据类型之六 数值类(NSValue)

    // NSValue能够将c类型转换为Objective-C对象,如NSRange,CGPoint.CGSize,CGRect,CGVector,UIEdgeInsets,UIOffset NSRan ...

  8. Android---OpenGL ES之添加动作

    本文译自:http://developer.android.com/training/graphics/opengl/motion.html 在屏幕上绘制对象是OpenGL的最基本功能,你可以使用其他 ...

  9. 用wireshark解析应用层存储包

    工作中常常须要统计server上的rtp包接收.发送性能.不想自己再做一套统计软件,打算用现有的wireshark来做分析统计. 先把rtp头存成pcap格式文件,pcap文件格式及如何存储能够參照这 ...

  10. 解压tar.gz文件报错gzip: stdin: not in gzip format解决方法

    解压tar.gz文件报错gzip: stdin: not in gzip format解决方法 在解压tar.gz文件的时候报错 1 2 3 4 5 [Sun@localhost Downloads] ...