[홈페이지만들기2] JSP_로그인 페이지(loginview, login_db)

jngyoon·2023년 8월 29일
0

혼공일기

목록 보기
6/24
post-thumbnail

로그인페이지

loginview.jsp

<body>
	//쿠키확인
	<%
		String userid="";
		String check = request.getHeader("Cookie");		//요청에 있는 Header 정보 중에 Cookie 라는 이름의 헤더가 있는지 확인 / null이라면 전송된 쿠키가 하나도 없다는 뜻

		if(check != null){
			Cookie[] cookies = request.getCookies(); 	//null이 아니면 cookies 배열에 꺼내기	
			
			for(Cookie cookie : cookies){
				if(cookie.getName().equals("joinid")){	//cookie에 getName에 joinid와 같은게 있다면
					userid = cookie.getValue();	//userid에 그 값을 넣어주기 -> input userid value에 <%=userid%>로 출력
				//쿠키 지우기(다음번 접속시 아이디가 남아있지 않게 하기 위해)
                    cookie.setMaxAge(0);		
					response.addCookie(cookie);
				}
			}
		}
//userid가 빈문자열("")이 아니라면 uwerpw에 커서 깜빡이기(focus)	
		if(!userid.equals("")){		
			
%>
<script>
	window.onload = function(){
		document.loginForm.userpw.focus();
	}
</script>

//else문에는 userid에 포커스(userid가 빈문자열)
<% 
		}
		else{
%>
<script>
	window.onload = function(){
		document.loginForm.userid.focus();
	}
</script>
	<%
		}
    %>   
    
  <form action="login_db.jsp" method="post">
      <input name="userid" placeholder="아이디를 입력하세요" value="<%=userid%>"><br>
      <input name="userpw" type="password" placeholder="비밀번호를 입력하세요"><br>
      <input type="submit" value="로그인">

  </form>

</body>

login_db.jsp

//DBConnection.jsp 'include'로 DB 연결
<%@include file="DBConnection.jsp" %>

<%
	//getParameter로 데이터 추출
	String userid = request.getParameter("userid");
	String userpw = request.getParameter("userpw");
	
	Connection conn = getConnection();
	
	String sql = "select * from t_user where userid=? and userpw=?";
	
	PreparedStatement ps = conn.prepareStatement(sql);
	ps.setString(1, userid);
	ps.setString(2, userpw);
	
	ResultSet rs = ps.executeQuery();

	//rs에 결과가 있다면 로그인 성공 / 아니면 실패
	if(rs.next()){
		session.setAttribute("loginUser", userid);	//setAttribute : 데이터 저장(loginUser라는 이름으로 userid 저장)
		response.sendRedirect("main.jsp");			//main.jsp로 이동
	}
	else{
		response.sendRedirect("login_fail.jsp");	//실패시 login_fail.jsp로 이동
	}

%>

0개의 댓글