ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [spring]member Presentation
    JAVA 2021. 8. 5. 17:19

    Member관련 View 만들기

    Controller 와 xml 파일: https://docc-storage.tistory.com/116

     


    >> main.jsp

    <%@ page language="java" contentType="text/html; charset=EUC-KR"
        pageEncoding="EUC-KR"%>
        
    <a href="list.do">게시판</a>&nbsp;
    
    <a href="loginForm.do">로그인</a>&nbsp;
    
    <a href="insertForm.do">회원가입</a>&nbsp;

    >> insertForm.jsp

    <%@ 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>
    
    <script src="//code.jquery.com/jquery-3.6.0.min.js"></script>
    <script src="http://dmaps.daum.net/map_js_init/postcode.v2.js"></script>
    <script>
           function openDaumPostcode(){
                  new daum.Postcode({
                         oncomplete:function(data){
                                  document.getElementById('zipcode').value=data.zonecode;
                                  document.getElementById('addr').value=data.address;
                          }
                   }).open();
           }//openDaumPostcode()---
    </script>
    
    <script>
    	function check(){
    		//데이터유효성 체크
    		if($("#id").val()==''){
    			alert("id를 입력하세요.");
    			$("#id").focus();
    			return false;
    		}
    		
    		if($("#pw").val()==''){
    			alert("암호를 입력하세요.");
    			$("#pw").focus();
    			return false;
    		}
    		
    		if($("#pw2").val()==''){
    			alert("암호확인를 입력하세요.");
    			$("#pw2").focus();
    			return false;
    		}
    		
    		//암호와 암호확인이 같은지 비교
    		if($("#pw").val()!=$("#pw2").val()){
    			alert("비밀번호가 일치하지 않습니다.");
    			$("#pw").val('');//내용삭제
    			$("#pw2").val('');
    			$("#pw").focus();
    			return false;
    		}
    		
    		//이름
    		if($("#name").val()==''){
    			alert("이름을 입력하세요.");
    			$("#name").focus();
    			return false;
    		}
    		
    		return true;
    	}//check()-end
    
    	//Ajax
    	function confirmIDCheck(){
    		if($('#id').val()==''){
    			alert("ID를 입력하세요.");
    		}else{//ID가 입력되었을 때
    			
    			$.ajax({
    				type:"POST",
    				url:"confirmID.do",
    				data:"id="+$("#id").val(),//서버로 넘길 인수값
    				dataType:'JSON',//서버가 보내준 자료 타입
    				success:function(data){
    					if(data.check==1){
    						//사용가능한 ID
    						alert('사용가능한 ID');
    						$("#pw").focus();
    					}else if(data.check==-1){
    						//사용중인 ID
    						alert('사용중인 ID');
    						$("#id").val('').focus();
    					}
    				}//success-end
    			});
    		}//else-end
    		
    	}//confirmIDCheck-end
    </script>
    
    <style type="text/css">
    h2{text-align:center;}
    table{
    	margin:auto;
    	background-color:ivory;
    }
    </style>
    </head>
    <body>
    	<h2>회원가입</h2>
    	<form method="post" action="insertPro.do" onSubmit="return check()">
    		<table border="1">
    		
    			<!-- ID -->
    			<tr>
    				<td>ID</td>
    				<td>
    					<input type="text" name="id" id="id" size="20"/>
    					<input type="button" value="ID중복체크" onclick="confirmIDCheck()"/>
    				</td>
    			</tr>
    			
    			<!-- 암호 -->
    			<tr>
    				<td>암호</td>
    				<td>
    					<input type="password" name="pw" id="pw" size="10"/>
    				</td>
    			</tr>
    			<tr>
    				<td>암호확인</td>
    				<td>
    					<input type="password" name="pw2" id="pw2" size="10"/>
    				</td>
    			</tr>
    			
    			<!-- 이름 -->
    			<tr>
    				<td>이름</td>
    				<td>
    					<input type="text" name="name" id="name" size="30"/>
    				</td>
    			</tr>
    			
    			<!-- 이메일 -->
    			<tr>
    				<td>이메일</td>
    				<td>
    					<input type="text" name="email1" id="email1"/>@
    					<select name="email2" id="email2">
    						<option value="@naver.com">naver.com</option>
    						<option value="@nate.com">nate.com</option>
    						<option value="@daum.net">daum.net</option>
    					</select>
    				</td>
    			</tr>
    			
    			<!-- 전화번호 -->
    			<tr>
    				<td>전화번호</td>
    				<td>
    					<select name="tel1" id="tel1">
    						<option value="010">010</option>
    						<option value="017">017</option>
    						<option value="018">018</option>
    					</select>
    					
    					<input type="text" name="tel2" id="tel2" size="4">
    					<input type="text" name="tel3" id="tel3" size="4">
    				</td>
    			</tr>
    			
    			<!-- 우편번호 -->
    			<tr>
    				<td>우편번호</td>
    				<td>
    					<input type="text" name="zipcode" id="zipcode" size="7" readonly />
    					<input type="button" value="주소검색" onclick="openDaumPostcode()">
    				</td>
    			</tr>
    			
    			<!-- 주소 -->
    			<tr>
    				<td>주소</td>
    				<td>
    					<input type="text" name="addr" id="addr" size="60" readonly />
    					<br/>
    					상세주소: <input type="text" name="addr2" id="addr2" size="40" />
    				</td>
    			</tr>
    			
    			<tr>
    				<td colspan="2" align="center">
    					<input type="submit" value="회원가입" />
    					<input type="reset" value="다시입력" />
    					<input type="button" value="가입안함" onclick="location='main.do'"/>
    				</td>
    			</tr>
    		</table>
    	
    	</form>
    </body>
    </html>

    >> loginForm.jsp

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
    
        <%-- loginForm.jsp --%>
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>Insert title here</title>
    <style type="text/css">
    table{
    margin:auto;
    background-color:#e3dbeb;
    }
    
    h2{
    text-align: center;
    }
    </style>
    
    <script type="text/javascript">
    	function check(){
    		if(document.loginForm.id.value==''){
    			alert('ID를 입력하세요')
    			document.loginForm.id.focus();
    			return false;
    		}
    		
    		if(document.loginForm.pw.value==''){
    			alert('암호를 입력하세요')
    			document.loginForm.pw.focus();
    			return false;
    		}
    		
    		return true;
    	}
    </script>
    
    </head>
    <body>
    	<c:if test="${!empty msg}">
    		${msg}
    	</c:if>
    	<h2>로그인</h2>
    	
    	<form name="loginForm" method="post" action="loginPro.do" onsubmit="return check()">
    		<table border="1">
    			<tr>
    				<td>ID</td>
    				<td><input type="text" name="id" id="id" size="20"></td>
    			</tr>
    		
    			<tr>
    				<td>암호</td>
    				<td><input type="password" name="pw" id="pw" size="20"></td>
    			</tr>
    			
    			<tr>
    				<td colspan="2" align="center">
    					<input type="submit" value="로그인">&nbsp;
    					<input type="reset" value="다시입력">
    				</td>
    			</tr>
    		
    		</table>
    	
    	</form>
    	
    </body>
    </html>

    >> loginSuccess.jsp

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
    
        <%-- loginSuccess.jsp --%>
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>Insert title here</title>
    
    <script type="text/javascript">
    	function updateMember(){
    		document.updateForm.action="memUpdateForm.do";//회원정보 수정폼
    		document.updateForm.submit();//서버로 전송
    	}
    	
    	function deleteMemeber(){
    		document.delForm.action="deleteMember.do";//회원 탈퇴
    		document.delForm.submit();//서버로 전송
    	}
    </script>
    </head>
    <body>
    	<h2>${mdto.name}님 오신것을 환영합니다.</h2>
    	<%-- session 등록 --%>
    	<c:set var="id" value="${mdto.id}" scope="session"/>
    	
    	<a href="list.do">게시판 글목록</a>
    	
    	<a href="javaScript:updateMember()">내정보 수정</a>
    	<a href="javaScript:deleteMember()">회원 탈퇴</a>
    	<a href="logOut.do">로그아웃</a>
    	
    	<form name="updateForm" method="post">
    		<input type="hidden" name="id" value="${id}">
    	</form>
    	
    	<form name="delForm" method="post">
    		<input type="hidden" name="id" value="${id}">
    	</form>
    </body>
    </html>

    >> logOut.jsp

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
    
        <%-- logOut.jsp --%>
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>Insert title here</title>
    </head>
    <body>
    <c:remove var="id" scope="session"/><%--세선 무효와--%>
    Bye Bye~~
    
    <!-- 1초후에 메인폼으로 돌아가기 -->
    <meta http-equiv="refresh" content="1;main.do"/>
    </body>
    </html>

     


    >> updateForm.jsp

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
    
        <%-- updateForm.jsp --%>
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>Insert title here</title>
    <script src="//code.jquery.com/jquery-3.6.0.min.js"></script>
    
    <script src="http://dmaps.daum.net/map_js_init/postcode.v2.js"></script>
    <script>
           function openDaumPostcode(){
                  new daum.Postcode({
                         oncomplete:function(data){
                                  document.getElementById('zipcode').value=data.zonecode;
                                  document.getElementById('addr').value=data.address;
                          }
                   }).open();
           }//openDaumPostcode()---
    </script>
    
    
    <style type="text/css">
    	h2{text-align:center;}
    	table{margin:auto; padding:3px; background-color:#FFEFD5;}
    </style>
    
    <script type="text/javascript">
    	function pwCheck(){
    		if(document.upForm.pw.value!=document.upForm.pw2.value){
    			alert('암호와 암호확인이 다릅니다.');
    			document.upForm.pw.focuse();
    			return false;
    		}
    		return true;
    	}
    
    
    </script>
    </head>
    <body>
    	<h2>내정보 수정</h2>
    	<form name="upForm" method="post" action="memUpdatePro.do">
    		<table border="1">
    			<tr>
    				<td>ID</td>
    				<td>
    					<input type="text" name="id" value="${mdto.id}" size="20">
    				</td>
    			</tr>
    			
    			<tr>
    				<td>암호</td>
    				<td>
    					<input type="password" name="pw" id="pw" size="20">
    				</td>
    			</tr>
    			<tr>
    				<td>암호확인</td>
    				<td>
    					<input type="password" name="pw2" id="pw2" size="20" onblur="pwCheck()">
    				</td>
    			</tr>
    			
    			<tr>
    				<td>이름</td>
    				<td>
    					<input type="text" name="name" id="name" size="30" value="${mdto.name}">
    				</td>
    			</tr>
    			
    			<tr>
    				<td>이메일</td>
    				<td>
    					<input type="text" name="email1" id="email1" size="30" value="${email1}">
    					
    					<select name="email2" id="email2">
    						<option value="${email2}">${email2}</option>
    						<option value="@naver.com">naver.com</option>
    						<option value="@nate.com">nate.com</option>
    						<option value="@daum.net">daum.net</option>
    					</select>
    				</td>
    			</tr>
    			<tr>
    				<td>전화번호</td>
    				<td>
    					<select name="tel1" id="tel1">
    						<option value="${tel1}">${tel1}</option>
    						<option value="010">010</option>
    						<option value="017">017</option>
    						<option value="018">018</option>
    					</select>
    					
    					<input type="text" name="tel2" id="tel2" value="${tel2}" size="4">
    					<input type="text" name="tel3" id="tel3" value="${tel3}" size="4">
    				</td>
    			</tr>
    			<tr>
    				<td>우편번호</td>
    				<td>
    					<input type="text" name="zipcode" id="zipcode" size="7" value="${mdto.zipcode}">
    					<input type="button" value="주소검색" onclick="openDaumPostcode()">
    				</td>
    			</tr>
    			<tr>
    				<td>주소</td>
    				<td>
    					<input type="text" name="addr" id="addr" value="${mdto.addr}" size="60" readonly="readonly">
    					<br/>
    					상세주소: <input type="text" name="addr2" id="addr2" value="${mdto.addr2}" size="60" readonly="readonly">
    				</td>
    			</tr>
    			
    			<tr>
    				<td colspan="2" align="center">
    					<input type="submit" value="내정보 수정">&nbsp;
    					<input type="reset" value="다시입력">&nbsp;
    					<input type="button" value="취소" onclick="location='main.do'">
    				</td>
    			</tr>		
    		
    		</table>
    	
    	</form>
    </body>
    </html>

    댓글

Designed by Tistory.