我的如果由于某种原因在下面检查第一个但不是第二个条件。
第一个是针对db检查user / passwd,第二个是硬代码用户和passowrd。
当我输入硬编码的user / passwd时,它不会让我通过,只使用db user / passwd。
知道出了什么问题吗?
if ((userTxt == userDB && passwdTxt == passwdDB) ||
(userTxt == "user" && passwdTxt == "test"))
{
switch (frmMdiMain.loginPageText)
{
case "exit":
mainPage.Hide();
Application.Exit();
break;
case "internal":
mdiInternalUse internUseForm = new mdiInternalUse();
internUseForm.Show();
this.Close();
break;
default:
break;
}
}
答案 0 :(得分:0)
如果没有您正在使用的语言,很难回答,但我认为问题是userTxt
和passwdTxt
的值与不同于{{1}的对象的对象进行比较}和"user"
例如,在"test"
的C / C ++中,userTxt
是指向char
的指针,它将具有与“用户”不同的地址。
在java中,保存String
和userTxt
值的"user"
对象也可能不同。
您需要对字符串执行正确的比较(例如,在C中使用strcmp()
,在C ++中使用sts::string
,在java中使用userTxt.compare("user")