사용자가 사용자 이름 &을 입력하면 입력이 사용자 테이블의 일부 행과 일치하는지 확인하여 인증을 수행하고 싶습니다. 지금까지 코드는 다음과 같습니다. 데이터베이스의 첫 번째 사용자 만 로그인 할 수 있습니다. 내가 어떻게 올바르게 설정할 수 있는지 제안 해주십시오. 감사합니다데이터베이스의 사용자 세부 정보와 비교하여 사용자 로그인
private class thehandler implements ActionListener {
@Override
public void actionPerformed(ActionEvent ae) {
String namevalue = usertext.getText();
String pwdvalue = pwdtext.getText();
//read values from user table in sql database
try {
Class.forName("com.mysql.jdbc.Driver");
String conUrl = "jdbc:mysql://localhost/hall?" +
"user=root&password=blend";
Connection con = DriverManager.getConnection(conUrl);
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM user");
while(rs.next()) {
if(namevalue.equals(rs.getString("userName")) && pwdvalue.equals(rs.getString("password"))) {
JOptionPane.showMessageDialog(null, "You are logged in",
"Makhall login", JOptionPane.INFORMATION_MESSAGE);
//move on to homepage if user is valid
homePage home = new homePage();
home.setAlwaysOnTop(rootPaneCheckingEnabled);
}
else {
JOptionPane.showMessageDialog(null, "Incorrect username or password",
"Error", JOptionPane.ERROR_MESSAGE);
}
break;
}
}
catch (SQLException e) {
System.out.println("SQL Exception: "+ e.toString());
}
catch (ClassNotFoundException cE) {
System.out.println("Class Not Found Exception: "+ cE.toString());
}
}
}
뭐가 잘못 됐는지조차 말하지 마세요. 다른 사람이 코드를 평가하도록하려면 [코드 검토] (http://codereview.stackexchange.com/)를 시도하십시오. 그렇지 않으면 작동하지 않는 내용과 수행 할 내용을 알려주십시오. – Widor
게시 한 코드의 품질과 문제는 웹 보안을 실제로 읽지 않고 자신 만의 보안 조치를 구현하지 말고 조언을 해줄 수 있습니다. – Joost
암호를 데이터베이스에 일반 텍스트로 저장하고 있습니까? Yikes. 내가 가입하지 않으려면 어떤 웹 사이트입니까? – bluevector