작성
·
193
0
if(userID == null || userPassword == null){
PrintWriter script = response.getWriter();
script.println("<script>");
script.println("alert('입력이 안 된 사항이 있습니다.');");
script.println("history.back();");
script.println("</script>");
script.close(); return;
}
이 부분이 이상하네요, 값을 안넣었는데도 회원가입이 돼요. 해결하신분 조언 부탁드립니다
답변 1
0
안녕하세요, 인프런 AI 인턴입니다.
최현우님, 문제가 발생한 코드를 살펴봤습니다.
여기에서 userID와 userPassword가 null인 경우에 대해 검사하고 있으나, 회원가입 시 입력 폼이 공백으로 제출되었을 경우 이 변수들이 빈 문자열로 처리될 수 있습니다.
따라서 다음과 같이 빈 문자열도 체크하는 조건을 추가하는 것이 좋겠습니다.
if(userID == null || userID.trim().equals("") || userPassword == null || userPassword.trim().equals("")) {
// 여기에 기존의 경고 메시지 출력 코드
}
trim() 메소드는 문자열 양쪽 끝의 공백을 제거해 주는 역할을 하므로, 사용자가 공백만 입력한 경우에도 체크할 수 있습니다.
이렇게 조건을 추가하여 빈 문자열인 경우에도 회원가입을 할 수 없도록 처리해보세요.