c# - Yes/NO window appears even when Password is correct -
private void button1_click(object sender, eventargs e) { try { var sr = new system.io.streamreader("c:\\" + textbox1.text + "\\login.txt"); username = sr.readline(); password = sr.readline(); email = sr.readline(); sr.close(); if (username == textbox1.text && password == passwordtextbox.text) messagebox.show("you logged in."); else messagebox.show("username or password seems invalid, please use email recover password/username"); form2 frm = new form2(); // if frm.show(); //frm.show(); frm.mypass = password; frm.myid = username; } catch(system.io.directorynotfoundexception ) { messagebox.show("error, please correct username/pass or recover"); } }
so, problem form2 recoverypassword question yes/no, in user presses yes, prompts them input email send password, , pressing no, return main screen. however, problem form yes/no should appear if password wrong, appears when password right. how should fix ?
what tried put these lines
form2 frm = new form2(); // if frm.show(); //frm.show(); frm.mypass = password; frm.myid = username;
in if statement, didn't work showed me error invalid expression else. don't know else work. if can help, please do. thank you.
here's code, indented:
if (username == textbox1.text && password == passwordtextbox.text) messagebox.show("you logged in."); else messagebox.show("username or password seems invalid, please use email recover password/username"); form2 frm = new form2(); frm.show(); frm.mypass = password; frm.myid = username;
you need curly braces group logic together:
else { messagebox.show("username or password seems invalid, please use email recover password/username"); form2 frm = new form2(); frm.show(); frm.mypass = password; frm.myid = username; }
i'd suggest replacing show()
showdialog()
, prevent user interacting first form while second open, , prevent code continuing run , trying password , username before user has entered them.
Comments
Post a Comment