1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 | <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html lang="ko"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>ex01_회원가입.jsp</title> <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.6.2/dist/css/bootstrap.min.css"> <!-- <script src="https://cdn.jsdelivr.net/npm/jquery@3.6.4/dist/jquery.slim.min.js"></script> --> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.1/jquery.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.1/dist/umd/popper.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/bootstrap@4.6.2/dist/js/bootstrap.bundle.min.js"></script> <style> .container { display : flex; flex-direction : column; align-items : center; padding : 50px; border : 2px solid gray; background-color : gray; } form { display: flex; flex-direction : column; justify-content : space-evenly; height : 1000px; width : 500px; } .cont { padding : 20px; border : 2px solid gray; background-color : white; } .gender { text-align: center; } </style> <script> 'use strict'; function fCheck() { let name = myform.name.value; let age = myform.age.value; if(name.trim() == "") { alert("성명을 입력하세요!!") myform.name.focus(); } else if(age < 20) { alert("만 20세 이상만 가입할 수 있습니다!!") myform.age.focus(); } else { myform.submit(); } } </script> </head> <body> <p><br /></p> <div class="container"> <h2 style="font-size: 40px; color: white">회원 가입</h2> <br/> <form name="myform" method="post" action="<%=request.getContextPath() %>/j1026/Ex01_memberOk"> <div class="cont"> <label for="nickName">닉네임</label> <input type="text" name="nickName" id="nickName" class="form-control" autofocus/> </div> <div class="cont"> <label for="password">비밀번호</label> <input type="password" name="password" id="password" class="form-control"/> </div> <div class="cont"> <label for="name">성명</label> <input type="text" name="name" id="name" class="form-control"/> </div> <div class="cont"> <label for="age">나이</label> <input type="number" name="age" id="age" class="form-control mb-3"/> </div> <div class="cont"> <p>성별</p> <p class="gender">남자<input type="radio" name="gender" value="남자" checked /></p> <p class="gender">여자<input type="radio" name="gender" value="여자" /></p> </div> <div class="cont"> <p>직업</p> <select name="job" class="form-control"> <option value="">직업선택</option> <option>학생</option> <option>회사원</option> <option>군인</option> <option>공무원</option> <option>웹프로그래머</option> <option>기타</option> </select> </div> <div class="cont"> <p>취미</p> <input type="checkbox" name="hobby" value="등산" />등산 <input type="checkbox" name="hobby" value="낚시" />낚시 <input type="checkbox" name="hobby" value="수영" />수영 <input type="checkbox" name="hobby" value="바둑" />바둑 <input type="checkbox" name="hobby" value="싸이클" />싸이클 <input type="checkbox" name="hobby" value="배드민턴" />배드민턴 </div> <input type="button" value="회원가입" xxxxonclick="fCheck()" class="btn btn-primary form-control"/> </form> </div> <p><br /></p> </body> </html> | cs |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 | <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <% String nickName = request.getParameter("nickName"); int password = Integer.parseInt(request.getParameter("password")); String name = request.getParameter("name"); int age = Integer.parseInt(request.getParameter("age")); String gender = request.getParameter("gender"); String hobby = request.getParameter("hobby"); String job = request.getParameter("job"); %> <!DOCTYPE html> <html lang="ko"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>ex01_회원가입Res</title> <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.6.2/dist/css/bootstrap.min.css"> <!-- <script src="https://cdn.jsdelivr.net/npm/jquery@3.6.4/dist/jquery.slim.min.js"></script> --> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.1/jquery.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.1/dist/umd/popper.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/bootstrap@4.6.2/dist/js/bootstrap.bundle.min.js"></script> <script> 'use strict'; if('<%=nickName%>' != '' && '<%=nickName%> != null') { alert('<%=nickName%>' + "님 회원가입이 완료되었습니다!!\n\n회원 메인창으로 이동합니다."); } else { location.href='ex01_member.jsp'; } function logoutCheck() { let ans = confirm("로그아웃 하시겠습니까?"); if(ans) { alert('<%=nickName%>' + '님 로그아웃 되었습니다!!'); <% //response.sendRedirect(request.getContextPath()+"/study/1026/ex01_member.jsp"); %> location.href='ex01_member.jsp'; } } </script> </head> <body> <p><br /></p> <div class="container"> <h2>회원 메인창</h2> <p><%=nickName %>님 로그인 중이십니다.</p> <p>닉네임 : <%=nickName %></p> <p>비밀번호 : <%=password %></p> <p>이름 : <%=name %></p> <p>나이 : <%=age %></p> <p>성별 : <%=gender %></p> <p>취미 : <%=hobby %></p> <p>직업 : <%=job %></p> <input type="button" value="로그아웃" xxxxonclick="logoutCheck()"/> </div> <p><br /></p> </body> </html> | cs |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 | package study.j1026; import java.io.IOException; import java.io.PrintWriter; import java.net.URLEncoder; import javax.servlet.ServletException; import javax.servlet.ServletRequest; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @WebServlet("/j1026/Ex01_memberOk") public class Ex01_memberOk extends HttpServlet { @Override protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("utf-8"); String nickName = request.getParameter("nickName") == null ? "" : request.getParameter("nickName"); int password = request.getParameter("password") == null ? 0 : Integer.parseInt(request.getParameter("password")); String name = request.getParameter("name") == null ? "" : request.getParameter("name"); int age = request.getParameter("age") == null ? 0 : Integer.parseInt(request.getParameter("age")); String gender = request.getParameter("gender") == null ? "남자" : request.getParameter("gender"); String[] hobbys = request.getParameterValues("hobby"); String job = request.getParameter("job"); if(name.equals("") || age < 20) { response.sendRedirect(request.getContextPath()+"/study/1026/ex01_member.jsp"); } else { System.out.println("nickn=Name = " + nickName); System.out.println("password = " + password); System.out.println("name = " + name); System.out.println("age = " + age); System.out.println("gender = " + gender); System.out.println("job = " + job); String hobby = ""; for(String h : hobbys) { hobby += h + "/"; } hobby = hobby.substring(0, hobby.length()-1); System.out.println("hobby = " + hobby); nickName = URLEncoder.encode(nickName, "utf-8"); name = URLEncoder.encode(name, "utf-8"); gender = URLEncoder.encode(gender, "utf-8"); job = URLEncoder.encode(job, "utf-8"); hobby = URLEncoder.encode(hobby, "utf-8"); response.sendRedirect(request.getContextPath()+"/study/1026/ex01_memberRes.jsp?nickName="+nickName+"&password="+password+"&name="+name+"&age="+age+"&gender="+gender+"&job="+job+"&hobby="+hobby); } } } | cs |