SqlCommand cmd = new SqlCommand("select * from admin where name = '"+ name +"' and psw ='"+ psw +"'", conn);
        
            conn.Open();
            SqlDataReader sdr = cmd.ExecuteReader();
                         if (sdr.Read())
            {
                if (sdr["type"].ToString()!="editor")
                {
                    Response.Write("<script language='javascript'>alert('管理员登录成功!');location.href('default2.aspx');</script>");
                }
                else
                {
                    Response.Write("<script language='javascript'>alert('登录成功!');location.href('default.aspx');</script>");
                }
            }
            else
            {
                Response.Write("<script language='javascript'>alert('用户名密码错误!');history.back();</script>");
            }用的datareader,前台提交用户名和密码,后台判断用户类别,现在程序出现问题不管管理员还是发布人员都显示‘管理员登陆成功’,本人菜鸟虚心求教!

解决方案 »

  1.   

    断点调试一下,看看发布人员登录时sdr["type"].ToString()!="editor" 是否成立,有没有拼写错误
      

  2.   

    设置断点了,还是发布人员能够登陆,提示“管理员登陆成功”,感觉这语句sdr["type"].ToString()!="editor"有问题,数据库里面已经为用户设置了类别。原因不明,继续在线等待。
      

  3.   

    sdr["type"].ToString()!="editor"  你数据库类别确定和这个不同么? 仔细检查下把!
      

  4.   

    找到问题了,修改为下面就可以实现了,还是数据的转化类型存在问题
    sdr["type"].ToString().Trim()!="editor" 
    多谢大家!