JSP 게시판 - 게시글 삭제
BoardDeleteForm.jsp
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 | <%@page import="model.BoardBean"%> <%@page import="model.BoardDAO"%> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <body> <% //비밀번호 확인만하고 넘버를 넘겨 해당 넘버에 해당하는 정보 삭제하는 메서드 호출 BoardDAO bdao = new BoardDAO(); //하나의 게시글을 리턴 int num = Integer.parseInt(request.getParameter("num")); BoardBean bean = bdao.getOneUpdate(num); %> <div style="text-align: center"> <h2>게시글 삭제</h2> <form action="BoardDeleteProc.jsp" method="post"> <table align="center" "width="600" border="1" bgcolor="skyblue"> <tr height="40"> <td width="120" align="center">작성자</td> <td width="180" align="left"><%=bean.getWriter()%></td> <td width="120" align="center">작성일</td> <td width="180" align="left"><%=bean.getReg_date()%></td> </tr> <tr height="40"> <td width="120" align="center">제목</td> <td colspan="3" align="left"><%=bean.getSubject()%></td> </tr> <tr height="40"> <td width="120" align="center">패스워드</td> <td colspan="3" align="left"><input type="password" name="password" size="60"></td> </tr> <tr height="40"> <td colspan="3" align="center"> <input type="hidden" name="num" value="<%=num %>"> <input type="submit" value="글삭제"> <input type="button" onclick="location.href='BoardList.jsp'" value="목록보기"> </tr> </table> </form> </div> </body> </html> | cs |
BoardDeleteProc.jsp
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 | <%@page import="model.BoardDAO"%> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <body> <% //패스워드, 넘버 두가지만 받으므로 참조변수에 이 두가지만 담는다 String pass = request.getParameter("password"); int num = Integer.parseInt(request.getParameter("num")); //데이터베이스 연결 BoardDAO bdao = new BoardDAO(); String password = bdao.getPassword(num); //기존 패스워드값과 delete form에서 작성한 패스워드 비교 if (pass.equals(password)) { //입력한 패스워드가 맞다면 bdao.deleteBoard(num); response.sendRedirect("BoardList.jsp"); } else { %> <script> alert("패스워드가 틀렸습니다."); history.go(-1); </script> <% } %> </body> </html> | cs |
BoardDAO.java 중 일부 [ getPassword ] 메서드, [ deleteBoard ] 메서드
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 | // update와 delete시 필요한 패스워드 값을 리턴해주는 메서드 public String getPassword(int num) { String pass = ""; getCon(); try { String sql = "select password from board where num=?"; pstmt = con.prepareStatement(sql); pstmt.setInt(1, num); rs = pstmt.executeQuery(); if (rs.next()) { // 패스워드값 받아오는거니까 getString의 인덱스 1번 pass = rs.getString(1); } // 자원반납 con.close(); } catch (SQLException e) { e.printStackTrace(); } return pass; } public void deleteBoard(int num) { getCon(); try { String sql ="delete from board where num=?"; pstmt = con.prepareStatement(sql); pstmt.setInt(1, num); pstmt.executeUpdate(); con.close(); } catch (SQLException e) { e.printStackTrace(); } | cs |
'JSP > JSP & Servlet ' 카테고리의 다른 글
(JSP 인강) jsp web MVC model2 programming (0) | 2019.05.17 |
---|---|
JSP 게시판 - 전체게시글보기 카운트 (0) | 2019.05.14 |
JSP게시판 - 글 수정 (0) | 2019.05.13 |
JSP 게시판 - 답글 쓰기 (0) | 2019.05.10 |
JSP게시판 - 게시글 보기 (0) | 2019.05.09 |