焚寂六月 2017-04-09 02:54 采纳率: 64.7%
浏览 3674
已采纳

登录验证用户名和密码-ASP.NET

 public static bool CheckLogin(string userName, string password)
            {
                string sqlConnectionStr = "Server = .; DataBase = Experiment; User ID = sa; Password = 585858";
                SqlConnection sqlConnection = new SqlConnection(sqlConnectionStr);
                sqlConnection.Open();

                string sqlCommandStr = "select * from Administrator where admin_name = '" + userName + "'and admin_psw = '" + password + "'";
                SqlCommand sqlCommand = new SqlCommand(sqlCommandStr, sqlConnection);
                SqlDataReader sqlDataReader = sqlCommand.ExecuteReader();
                if (sqlDataReader.Read())
                {
                    return true;
                }
                else
                {
                    return false;
                }

            }

请问我这样做为什么不能验证用户名和密码?sqlDataReader和sqlCommand之间到底有什么关系啊,我的sqlCommandStr里限定了从用户名为userName并且密码为password(这两个都是通过函数传进来的)选择数据,那么sqlDataReader.ExecuteReader后读到的数据应该也就是这一行啊

  • 写回答

1条回答 默认 最新

  • Go 旅城通票 2017-04-09 05:32
    关注

    自己检查变量名前后是不是有空格了,打印出sqlCommandStr 去数据库执行看是否能选出记录,如果你的密码md5,你传递的值也要md5加密后在对比
    sqlCommand用于执行sql语句,还有一个DataAdapter也是用来执行sql语句填充DataTable之类用的,自己找本ado.net基础的书来看
    http://blog.csdn.net/jintougao/article/details/8587661

     string sqlCommandStr = "select * from Administrator where admin_name = '" + userName + "'and admin_psw = '" + password + "'";
    Response.Write(sqlCommandStr);Response.End();/////
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 matlab求解平差
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料
  • ¥15 使用R语言marginaleffects包进行边际效应图绘制
  • ¥20 usb设备兼容性问题
  • ¥15 错误(10048): “调用exui内部功能”库命令的参数“参数4”不能接受空数据。怎么解决啊
  • ¥15 安装svn网络有问题怎么办