본문 바로가기
WEB Archive

[JSP] 회원 성적 관리 실습 - 추가, 수정 폼

by universedevelope 2024. 8. 22.

MemberScoreSelect.jsp  ▼▼▼ 메인화면

<%@page import="com.test.MemberScoreDTO"%>
<%@page import="com.test.MemberDTO"%>
<%@page import="com.test.MemberScoreDAO"%>
<%@ page contentType="text/html; charset=UTF-8"%>
<%
	StringBuffer str = new StringBuffer();
	MemberScoreDAO score = new MemberScoreDAO();
	try
	{
		MemberDTO dto = new MemberDTO();
		score.connection();
		str.append("<table class='table'>");
		
		str.append("<tr>");
		str.append("<th>번호</th><th>이름</th><th>국어점수</th><th>영어점수</th>");
		str.append("<th>수학점수</th><th>총점</th><th>평균</th><th>석차</th>");
		str.append("<th>성적관리</th>");
		str.append("</tr>");
		
		for(MemberScoreDTO obj : score.lists())
		{
			str.append("<tr>");
			str.append("<td>" + obj.getSid() + "</td>");
			str.append("<td>" + obj.getName() + "</td>");
			str.append("<td class='txtScore'>" + obj.getKor() + "</td>");
			str.append("<td class='txtScore'>" + obj.getEng() + "</td>");
			str.append("<td class='txtScore'>" + obj.getMat() + "</td>");
			str.append("<td class='txtScore'>" + obj.getTot() + "</td>");
			str.append("<td class='txtScore'>" + String.format("%.2f", obj.getAvg())+ "</td>");
			str.append("<td class='txtScore'>" + obj.getRank() + "</td>");
			if(obj.getKor() == -1 &&obj.getEng()==-1 &&obj.getMat()==-1)
			{	
				str.append("<td>");
				str.append("<a href='MemberScoreInsertForm.jsp?sid=" + obj.getSid()+"'><button type='button' class='btn01'>입력</button></a>");
				
				str.append("<button type='button' class='btn02' disabled='disabled'>수정</button>");
				str.append("<button type='button' class='btn02' disabled='disabled'>삭제</button>");
				str.append("</td>");
				str.append("</tr>");
			}
			else
			{
				str.append("<td>");
				str.append("<button type='button' class='btn02' disabled='disabled'>입력</button>");
				
				str.append("<a href='MemberScoreUpdateForm.jsp?sid=" + obj.getSid() + "'>");
				str.append("<button type='button' class='btn01'>수정</button></a>");
				str.append("<a href='javascript:MemberScoreDelete(" + obj.getSid() + ", \"" + obj.getName() + "\")'><button type='button' class='btn01'>삭제</button></a>");
				str.append("</td>");
				str.append("</tr>");
			}
		}
		str.append("</table>");
	}
	catch(Exception e)
	{
		System.out.println(e.toString());
	}
%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>MemberScoreSelect.jsp</title>
<link rel="stylesheet" type="text/css" href="css/MemberScore.css">
<script type="text/javascript">
	function MemberScoreDelete(sid, name)
	{
		//alert("안녕하세요 성적삭제합니다.");
		//alert(sid);
		//alert(name);
		var res = confirm("번호 : " + sid + "이름 : " + name + "\n"
			          	+ "위 회원의 정보를 정말 삭제하시겠습니까?");
		alert(res);
		if(res)
			window.location.href = "MemberScoreDelete.jsp?sid="+sid;
		
	}
	
</script>
</head>
<body>

<div>
	<h1>회원 <span style="color: red;">성적</span> 관리 및 출력 페이지</h1>
	<hr />
</div>

<div>
	<a href="MemberSelect.jsp"><button type="button"> 회원 명단 관리 </button></a>
</div>

<!-- 번호 이름 국어점수 영어점수 수학점수 총점 평균 석차 	  성적 처리-->
<!-- 														입력 수정 삭제 -->
<%=str %>

</body>
</html>

MemberScoreInsertForm.jsp  ▼▼▼ 회원 성적 입력 폼

<%@page import="com.test.MemberScoreDTO"%>
<%@page import="com.test.MemberScoreDAO"%>
<%@ page contentType="text/html; charset=UTF-8"%>
<%
	// 스크립 릿
	request.setCharacterEncoding("UTF-8");

	String sid = request.getParameter("sid");
	
	String name = "";
	MemberScoreDAO dao = new MemberScoreDAO();
	try
	{
		dao.connection();
		MemberScoreDTO dto = new MemberScoreDTO();
		dto = dao.searchScore(sid);
		name = dto.getName();
	}
	catch(Exception e)
	{
		System.out.println(e.toString());
	}
	finally
	{
		try
		{
			dao.close();
		}
		catch(Exception e)
		{
			System.out.println(e.toString());
		}
	}
%>

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>MemberScoreInsertForm.jsp</title>
<link rel="stylesheet" type="text/css" href="css/MemberScore.css">
<script type="text/javascript">
	function memberSubmit()
	{
		//alert("호출");
		var memberForm = document.getElementById("memberForm");
		
		var kor = document.getElementById("uKor");
		var eng = document.getElementById("uEng");
		var mat = document.getElementById("uMat");
		
		var korMsg = document.getElementById("korMsg");
		var engMsg = document.getElementById("engMsg");
		var matMsg = document.getElementById("matMsg");
		
		korMsg.style.display = "none";
		engMsg.style.display = "none";
		matMsg.style.display = "none";
		
		if (kor.value == "" || kor.value.indexOf(" ") != -1 || parseInt(kor.value)<0 || parseInt(kor.value)>100 || isNaN(kor.value))
		{
			korMsg.style.display = "inline";
			kor.focus();
			return;
		}
		if (eng.value == "" || eng.value.indexOf(" ") != -1 || parseInt(eng.value)<0 || parseInt(eng.value)>100 || isNaN(kor.value))
		{
			engMsg.style.display = "inline";
			eng.focus();
			return;
		}
		if (mat.value == "" || mat.value.indexOf(" ") != -1 || parseInt(mat.value)<0 || parseInt(mat.value)>100 || isNaN(kor.value))
		{
			matMsg.style.display = "inline";
			mat.focus();
			return;
		}
		
		memberForm.submit();
		
	}
	
	function memberReset()
	{
		//alert("멤버리셋");
		var memberForm = document.getElementById("memberForm");
		var kor = document.getElementById("uKor");

		var korMsg = document.getElementById("korMsg");
		var engMsg = document.getElementById("engMsg");
		var matMsg = document.getElementById("matMsg");
		
		korMsg.style.display = "none";
		engMsg.style.display = "none";
		matMsg.style.display = "none";
		
		memberForm.reset();
		kor.focus();
	}
	
	
</script>
</head>
<body>


<div>
	<h1> 회원성적관리 및 입력 페이지</h1>
	<hr>
</div>

<div><a href="MemberScoreSelect.jsp"><button type="button">회원 성적 관리</button></a></div>


<div>
	<!-- 회원 성적 데이터 입력 폼 구성  -->
	<form action="MemberScoreInsert.jsp?sid=<%=sid %>" method="post" id="memberForm"> 
		<table class="table">
			<tr>
				<th>번호</th>
				<td><%=sid %></td>
				<td></td>
			</tr>
			<tr>
				<th>이름</th>
				<td><%=name %></td>
				<td></td>
			</tr>
			<tr>
				<th>국어점수</th>
				<td><input type="text" id="uKor" name="uKor" /></td>
				<td><span class="errMsg" id="korMsg">0~100사이의 국어점수를 입력해야 합니다</span></td>
			</tr>
			<tr>
				<th>영어점수</th>
				<td><input type="text" id="uEng" name="uEng" /></td>
				<td><span class="errMsg" id="engMsg">0~100사이의 영어점수를 입력해야 합니다</span></td>
			</tr>
			<tr>
				<th>수학점수</th>
				<td><input type="text" id="uMat" name="uMat" /></td>
				<td><span class="errMsg" id="matMsg">0~100사이의 수학점수를 입력해야 합니다</span></td>
			</tr>
			
		</table>
		<br>
		<a href="javascript:memberSubmit()"><button type="button">입력하기</button></a>
		<a href="javascript:memberReset()"><button type="button">취소하기</button></a>
		<a href="memberScoreSelect.jsp"><button type="button">목록으로</button></a>
	</form>
</div>

</body>
</html>

MemberScoreUpdateForm.jsp  ▼▼▼ 회원 성적 수정 폼

<%@page import="com.test.MemberScoreDTO"%>
<%@page import="com.test.MemberScoreDAO"%>
<%@page import="com.test.MemberDTO"%>
<%@page import="com.test.MemberDAO"%>
<%@ page contentType="text/html; charset=UTF-8"%>
<%
	request.setCharacterEncoding("UTF-8");
	String sid = request.getParameter("sid");
	String name = "";

	int kor = 0;
	int eng = 0;
	int mat = 0;
	MemberScoreDAO dao = new MemberScoreDAO();
	try
	{
		dao.connection();
		MemberScoreDTO dto = new MemberScoreDTO();
		dto = dao.searchScore(sid);
		name = dto.getName();
		kor = dto.getKor();
		eng = dto.getEng();
		mat = dto.getMat();
	}
	catch(Exception e)
	{
		System.out.println(e.toString());
	}
	finally
	{
		try
		{
			dao.close();	
		}
		catch(Exception e)
		{
			System.out.println(e.toString());
		}		
	}
	
%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>MemberScoreUpdateForm.jsp</title>
<link rel="stylesheet" type="text/css" href="css/MemberScore.css">
<script type="text/javascript">
	function memberSubmit()
	{
		//alert("호출");
		var memberForm = document.getElementById("memberForm");
		
		var kor = document.getElementById("uKor");
		var eng = document.getElementById("uEng");
		var mat = document.getElementById("uMat");
		
		var korMsg = document.getElementById("korMsg");
		var engMsg = document.getElementById("engMsg");
		var matMsg = document.getElementById("matMsg");
		
		korMsg.style.display = "none";
		engMsg.style.display = "none";
		matMsg.style.display = "none";
		
		if (kor.value == "" || kor.value.indexOf(" ") != -1 || parseInt(kor.value)<0 || parseInt(kor.value)>100 || isNaN(kor.value))
		{
			korMsg.style.display = "inline";
			kor.focus();
			return;
		}
		if (eng.value == "" || eng.value.indexOf(" ") != -1 || parseInt(eng.value)<0 || parseInt(eng.value)>100 || isNaN(kor.value))
		{
			engMsg.style.display = "inline";
			eng.focus();
			return;
		}
		if (mat.value == "" || mat.value.indexOf(" ") != -1 || parseInt(mat.value)<0 || parseInt(mat.value)>100 || isNaN(kor.value))
		{
			matMsg.style.display = "inline";
			mat.focus();
			return;
		}
		memberForm.submit();
	}

	
	function memberReset()
	{
		//alert("멤버리셋");
		var memberForm = document.getElementById("memberForm");
		var kor = document.getElementById("uKor");

		var korMsg = document.getElementById("korMsg");
		var engMsg = document.getElementById("engMsg");
		var matMsg = document.getElementById("matMsg");
		
		korMsg.style.display = "none";
		engMsg.style.display = "none";
		matMsg.style.display = "none";
		
		memberForm.reset();
		kor.focus();
	}
	
	
	
</script>
</head>
<body>

<div>
	<h1> 회원명단관리 및 수정 페이지</h1>
	<hr>
</div>

<div><a href="MemberSelect.jsp"><button type="button">회원 명단 관리</button></a></div>


<div>
	<!-- 회원 데이터 수정 폼 구성  -->
	<form action="MemberScoreUpdate.jsp?sid=<%=sid %>" method="post" id="memberForm"> 
		<table>
			<tr>
				<th>번호</th>
				<td><%=sid %></td>
				<td></td>
			</tr>
			<tr>
				<th>이름</th>
				<td><%=name %></td>
				<td><span class="errMsg" id="nameMsg">이름을 입력해야합니다.</span></td>
			</tr>
			<tr>
				<th>국어점수</th>
				<td><input type="text" id="uKor" name="uKor" value="<%=kor %>"></td>
				<td><span class="errMsg" id="korMsg">0~100사이의 국어점수를 입력해야 합니다</span></td>
			</tr>
			<tr>
				<th>영어점수</th>
				<td><input type="text" id="uEng" name="uEng" value="<%=eng %>"></td>
				<td><span class="errMsg" id="engMsg">0~100사이의 영어점수를 입력해야 합니다</span></td>
			</tr>
			<tr>
				<th>수학점수</th>
				<td><input type="text" id="uMat" name="uMat" value="<%=mat %>"></td>
				<td><span class="errMsg" id="matMsg">0~100사이의 수학점수를 입력해야 합니다</span></td>
			</tr>
		</table>
		<br>
		<a href="javascript:memberSubmit()"><button type="button">수정하기</button></a>
		<a href="javascript:memberReset()"><button type="button">취소하기</button></a>
		<a href="MemberSelect.jsp"><button type="button">목록으로</button></a>
	</form>
</div>

<br>





</body>
</html>
728x90

'WEB Archive' 카테고리의 다른 글

[JSP] 회원 관리 실습 - 추가, 수정 폼  (0) 2024.08.22
[JSP] 데이터베이스 연결, 객체 구성, View 에서 호출  (0) 2024.08.22
[JSP] Member Score 구현  (0) 2024.08.22
[JSP] Score 구현  (0) 2024.08.22
[JSP] Member 구현  (0) 2024.08.22

댓글