string sqlcom = "select * from passwd where pw='" + TextBox1.Text.ToString() + "'";
        string contr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\\XM-SHOP\\xm-shop\\db1.mdb";
        OleDbConnection conn = new OleDbConnection(contr);
        conn.Open();
        OleDbCommand cmd = new OleDbCommand();
        cmd.Connection = conn;
        cmd.CommandText = sqlcom;
        OleDbDataReader reader = cmd.ExecuteReader();
       while(reader.Read())
        {
            if (reader["pw"].ToString() != "")
            {                Response.Write("<script>alert('正确')</script>");              }
            else
            {
                Response.Write("<script>alert('错误')</script>");  
            
            }
        
       
       }
程序貌似不进入WHLIE循环。

解决方案 »

  1.   

    看看那条SQL的执行结果 有数据没
      

  2.   

    程序看不出有什么问题!!
    唯一可改写的是Response,
    可改写成:
    Page.ClientScript.RegisterStartupScript(Page.GetType(), "right", "alert('正确')", true);
    试试!!
      

  3.   

    加一句判断是否有数据!
    ......
    if (reader.Read())
    {
       while(reader.Read())
       {
          if (reader["pw"].ToString() != "")
          {
              Response.Write("<script>alert('正确')</script>");  
          }
          else
          {
              Response.Write("<script>alert('错误')</script>");  
          }
       }
    }
    else
       Page.ClientScript.RegisterStartupScript(Page.GetType(), "none", "alert('没有数据')", true);
      

  4.   

    程序貌似不进入WHLIE循环。???
    那应该是条件问题了!!
    "<script>"不懂这些,帮不上忙
      

  5.   


     OleDbDataReader reader = cmd.ExecuteReader();有数据才进入循环的
      

  6.   

    断点调试看下~另,如ls所述的,你看下源代码,看下是不是response.write出来了或是dr为null