zoukankan      html  css  js  c++  java
  • 关于asp:login控件和验证码的问题?(转)

    1.验证码页面添加.
    2.将这验证码页面添加到login控件中:
    拖曳一Login控件,将之切换到模式下,在Html源文件中在表格中密码那行后添加:
     <tr>
        <td style=" 151px">
            <asp:Label ID="Label1" runat="server" AssociatedControlID="Password">验证码:</asp:Label>
        </td>
     </tr>
     <tr>
       <td style=" 151px">
         <asp:TextBox ID="txtImgValid" runat="server" Font-Size="0.8em" ></asp:TextBox>
         <asp:ImageButton id="imgValid" ImageUrl="~/public/imageValidate.aspx" runat="server" />
       </td>
     </tr>
    其中ImageUrl="~/public/imageValidate.aspx“ 的imageValidate.aspx指的就是我们第一步建立的验证码文件。
    3.在login控件的authenticate事件中加入代码
    protected void Login1_Authenticate(object sender, AuthenticateEventArgs e)
        {
            TextBox txtImage = Login1.FindControl("txtImgValid") as TextBox;
            
            if (Session["CheckCode"] == null)
            {
                Response.Write("<script language='javascript'>alert('未可知错误!')</script>");
                e.Authenticated = false;
                return;
            }
            
            if (String.Compare(Session["CheckCode"] .ToString(),txtImage.Text,true)!=0)
            {
                Response.Write("<script language='javascript'>alert('不匹配!')</script>");
                e.Authenticated = false;
                return;
            }
          
            e.Authenticated = true;
        }




    这样的做法只能验证验证码,而用户身份根本没有验证。
    即使输入错误的用户和密码,只要验证码正确,就能登陆成功。
    这是为什么,该怎么解决?

    原文:http://social.msdn.microsoft.com/Forums/ie/zh-CN/03175f21-e441-4347-9f8e-bf8ecfbf8454/asplogin

  • 相关阅读:
    CCF-CSP题解 201509-4 高速公路
    CCF-CSP题解 201403-4 无线网络
    CCF-CSP题解 201512-4 送货
    2019年9月10日
    53. 最大子序和
    54. 螺旋矩阵
    59. 螺旋矩阵 II
    61. 旋转链表
    62. 不同路径
    70. 爬楼梯
  • 原文地址:https://www.cnblogs.com/zhouzongqing/p/3741880.html
Copyright © 2011-2022 走看看