if (Page.IsValid)
        { 
          //创建数据库连接对象
            OleDbConnection conn = new OleDbConnection(ConfigurationManager.AppSettings["connstr"]);
            conn.Open();//打开数据库
            string objsql="select userid,userpwd from userinfo where userid='''+textbox1.Text+'''and userpwd='''+Textbox2.text+'''";
            OleDbCommand cmd=new OleDbCommand(objsql,conn);//创建命令对象
            OleDbDataReader dr=cmd.ExecuteReader();//进行数据库操作
            if (dr.Read())
            {
              Session["username"]=dr["username"];
              Session["userpwd"]=dr["userpwd"];
              Label3.Text="登陆成功";
            }
            else
            {
                Label3.Text="错误";            
            }
            conn.Close();
        }

解决方案 »

  1.   

    把Page.IsValid去掉,看显示什么,如果显示登陆成功,那说明 Page.IsValid=false
      

  2.   

    Response.Write("登陆成功"); 
    这样试一试。
      

  3.   

    SQL写得没错,label3.text显示什么.你跟踪调试一下不就行了?
      

  4.   

    string objsql="select userid,userpwd from userinfo where userid='''+textbox1.Text+'''and userpwd='''+Textbox2.text+'''"; 如果真是这样sql语句有问题
    +textbox1.Text+'''and userpwd='''
    ------------------sql语句and前面没有空格!
      

  5.   

    恩,同意8楼的看法,
    如果说代码就是这样写的话,那代码中有好几个sql语法错误,自己把代码粘到查询分析器或是用到IDE中去自己检查,
    asp.net不报错可能是错误的执行被跳过或忽略(个人认为)
      

  6.   

    我也看出来 and 前少了个 空格
      

  7.   

    hoho,我一放大,大家都看出来了
      

  8.   

    错误查出来了。sql语句的问题。
    userid='''+textbox1.Text+'''有错误。应该是userid='"+textbox1.Text+"'谢谢大家。分小弟就留着啦。哈哈