본문 바로가기
CLASS/SERVLET

#2-4 / double form

by hingu 2024. 5. 29.

👀 한 페이지에 form 두가지 형태로 구성되었을 경우

 

1.각 form 안에 input type hidden으로 넣어 구분하는 방법(파라미터 x)

<input type="hidden" name="part" value="1">

<input type="hidden" name="part" value="2">

 

2. action에 파라미터값을 이용하여 구분하는 방법 (get + post 방식)

action="./userinfo.do?part=1"

action="./userinfo.do?part=2"

 => java에 doGet,doPost 둘다 사용 (Service)

Service

doGet,doPost 모두 통신ㅇ르 받을 수 있는 전용 메소드 

Front에서 form과 action에 모두 값을 적용하여 보낼 경우 get,post 모두 필요하므로 해당 상황에 활용단, 한글이 깨질 수 있으므로 encoding 필수

 

 

3. action에 각각의 다른java 파일을 별도로 분리하는 방식

 

 

⚡ 2. action에 파라미터값을 이용하여 구분하는 방법

get 방식 : 사용자가 입력한 값이랑 동일한 방식으로 인식 
=> 연산기호 x  : equals 사용 or int로 전환 후 연산기호 사용
<body>
	<form id="frm1" method="post" action="./userinfo.do?part=1">
		<input type="hidden" name="part" value="1">	
		<p><b>아이디 찾기</b></p>
		고객명 : <input type="text" name="username"><br>
		<input type="button" value="찾기" onclick="id_search()"><br><br>
	</form>
	
	<form id="frm2" method="post" action="./userinfo.do?part=2">
		<input type="hidden" name="part" value="2">
		<p><b>패스워드 찾기</b></p>
		아이디 : <input type="text" name="userid"><br>
		이메일 : <input type="text" name="useremail"><br>
		<input type="button" value="찾기" onclick="pw_search()">
	</form>
</body>

<script type="text/javascript">
	function id_search(){ //아이디 찾기
		frm1.submit();
	}
	
	function pw_search(){ //패스워드 찾기
		frm2.submit();	
	}
</script>

 

public class userinfo extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
	protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		response.setContentType("text/html;charset=utf-8");
		request.setCharacterEncoding("utf-8");
		
		int part = Integer.parseInt(request.getParameter("part")); //각 번호 출력 1,2
		if(part == 1) {
			String id = request.getParameter("username");
		}else {
			String id = request.getParameter("userid");
			String email = request.getParameter("useremail");
			System.out.println(id);
			System.out.println(email);
		}
	}

}

 

'CLASS > SERVLET' 카테고리의 다른 글

#3-2 / 암호화(security)  (0) 2024.05.30
#3-1 / form 예제  (0) 2024.05.30
#2-3 / html 태그별 데이터 전송  (0) 2024.05.29
#2-2 / 검색에 따른 get 전송방식  (0) 2024.05.29
#2-1 / checkbox 및 라디오 핸들링  (0) 2024.05.29