본문 바로가기

JSP,Servlet

JSP - 회원가입/로그인 만들기 실습

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<fieldset align ="center">
<legend>로그인</legend>
	<form action="login.jsp" method ="post">
		<table align ="center">
		<tr>
		<td><input type ="text" placeholder="id를 입력하세요" name="id"></td>
		</tr>
		<tr>
		<td><input type ="password" placeholder="pw를 입력하세요" name="pw"></td>
		</tr>
		<tr>
		<td><input type ="submit" value ="로그인"></td>
		</tr>
		</table>
	
	</form>
	

</fieldset>
</body>
</html>

HTML 파일코드

<%@page import="java.net.URLEncoder"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
request.setCharacterEncoding("UTF-8");
String id =request.getParameter("id");
String pw =request.getParameter("pw");
%>
<h1>조건</h1>
<%

if(id.equals("smhrd")&&pw.equals("123")){
	response.sendRedirect("loginS.jsp?id="+URLEncoder.encode(id,"UTF-8"));
}else{
	response.sendRedirect("loginF.jsp");
}


%>

</body>
</html>

JSP파일 코드

 

1.먼저 인코딩

request.setCharacterEncoding("UTF-8");

 

2.파라미터 수집 하고 변수에 담아줌

String id=request.getParameter("id");
String pw=request.getParameter("pw");
request.setAttribute("id", "smhrd");

 

3.if / else문 사용(문자열이기 때문에 equals/&& 사용)

문제에서 조건이 id가 smhrd/ pw가 123 이면 loginS.jsp로 가서 나타내고 

             조건이 틀릴경우는 loginF.jsp로 이동

 

4. response.sendRedirect("loginS.jsp?id="+URLEncoder.encode(id,"UTF-8"));

loginS.jsp파일에서 id값을 필요로 하는데 여기서 "name" 없이 보냄 id값이 없음

그래서 loginS.jsp 하고 ?id="+URLEncoder.encode(id,"UTF-8")를 붙여준다

 

loginS.jsp 파일 코드

loginF.jsp 파일 코드

-a태그를 써서 로그인페이지를 누를 시 =====> login.html로 이동!!!!!

위에 코드를 실행시키면 아래와 같이 나타난다