if(textBox1.Text!=""&&textBox2.Text!=""&&textBox3.Text!="")
{
string para1,para2,para3;
para1=textBox1.Text;
para2=textBox2.Text;
para3=textBox3.Text;
bool valid = false;
string strConn="server=FEILONG;database=netsale; user id=sa;password=";
SqlConnection myConn=new SqlConnection(strConn);
myConn.Open();
string cnnstr="SELECT * FROM 登陆界面";
SqlCommand myCommand=new SqlCommand(cnnstr,myConn);
SqlDataReader myDataReader;
myDataReader=myCommand.ExecuteReader();
while(myDataReader.Read())
{
yhid=myDataReader["登陆号"].ToString();
yhname=myDataReader["登陆者"].ToString();
yhmima=myDataReader["密码"].ToString();
if(yhid==para1&&yhname==para2&&yhmima==para3)
{
valid = ture;
// this.Close();
}
}
myDataReader.Close();
myConn.Close();
if(!valid)
{
MessageBox.Show("对不起!\n 你不是合法用户,请注册","系统提示");
}
}
else
{
MessageBox.Show("请输全您的号码,姓名及密码","系统提示");
}
this.Close();
}

解决方案 »

  1.   

    当你把当前的FORM关闭时,此事件会继续执行完毕。
    所以还会显示MessageBox提示。
      

  2.   

    cdzwm(网际方舟) 写的是对的,你可以单步跟踪一下!看看到哪里出的错!
    ------------------------------
    我是一只小小鸟
    欢迎交流!
    MSN&Mail: [email protected]
      

  3.   

    请问 colinfly
      在上面的程序中是不是myDataReader=myCommand.ExecuteReader();
    没有执行呀,不管输入是正确的还是错误的,在运行时怎么总是执行
    if(!valid)
    {
    MessageBox.Show("对不起!\n 你不是合法用户,请注册","系统提示");
    }
    或者还是其他错误!
      

  4.   

    另外我用了另一种方法但是还是有问题
    其代码如下:
    if(textBox1.Text!=""&&textBox2.Text!=""&&textBox3.Text!="")
    {
      string para1,para2,para3;
      para1=textBox1.Text;
      para2=textBox2.Text;
      para3=textBox3.Text;
      int count=0;
      bool flag=false;
      string strConn="server=FEILONG;database=netsale; user id=sa;password=";
      SqlConnection myConn=new SqlConnection(strConn);
      string cnnstr="SELECT * FROM 登陆界面 WHERE (登陆号='"+para1+"'AND 登陆者='"+para2+"'AND 密码='"+para3+"')" ;
      SqlCommand myCommand=new SqlCommand(cnnstr,myConn);
      myCommand.CommandType=CommandType.Text;
      myCommand.CommandText=cnnstr;
      myConn.Open();
      count=(int)(myCommand.ExecuteScalar());
       if(count!=0)
         {
    flag=true;
             this.Close();
         }
        if(!flag)
         {
    MessageBox.Show("              对不起!\n 你不是合法用户,请注册","系统提示");
         }
    myConn.Close();
       }
     
       else
    {

    MessageBox.Show("请输全您的号码,姓名及密码","系统提示"); }
        
     
     这种方法输入运行时在count=(int)(myCommand.ExecuteScalar());上出现系统错误,请各位大侠帮帮忙!
     
      

  5.   

    Messagebox()后,程序应该要返回。不使用return的话,程序会继续往下执行。
      

  6.   

    private void Button1_Click(object sender, System.EventArgs e)
    {
    string UserName=this.Text1.Value;
    string PassWord=this.Password1.Value;  
    this.sqlSelectCommand1.CommandText = "SELECT username, password FROM [user] WHERE username='"+UserName+"' AND password='"+PassWord+"'"; 
    this.sqlDataAdapter1.Fill(this.dataSet11); 
    if(this.dataSet11.user.Rows.Count==0)
    {
    this.Label1.Text="不存在当前用户名或密码不正确!请重新输入.";
    }
    else
    {
    Session["PassedLogin"]="OK";
    this.Response.Redirect("frmMain.aspx");  
    } }
    这是我写的用于ASP.Net的原理应该差不多
      

  7.   

    把你代码发给我,我帮你调吧!
    ------------------------------
    我是一只小小鸟
    欢迎交流!
    尽快结帖哦!我是CSDN的菜鸟,等着你的分呢!
    MSN&Mail: [email protected]
    0A
      

  8.   

    用你得到的name和password进行组合查询,,把得到的值给一个数据集,,然后判断有没有记录,,如果没有弹出错误,,如果有弹出正确