차근차근 개발자 되기

JSP

64일차: JSP 댓글 게시판(상세 페이지, 댓글, 글 수정)_ 2021.09.13

wellow 2021. 9. 13. 23:29

 

목차

1.     댓글 게시판: 상세 페이지

2.     댓글 게시판: 댓글

3.     댓글 게시판: 글 수정

 

 

1. 댓글 게시판: 상세 페이지

 

- 상세 페이지(게시글)에서 ‘댓글’ 버튼 클릭을 클릭할 때, ①num, ②page, ③ref, ④re_level, ⑤re_step 값을 가지고 댓글 작성 폼으로 넘어간다.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<tr>
    <td colspan=4 align=center>
        <input type="button" value="댓글" 
            onClick="location.href='replyForm.jsp?num=<%=num%>&page=<%=nowpage%>&ref=<%=ref%>&re_step=<%=re_step%>&re_level=<%=re_level%>'">
            
        <input type="button" value="수정" 
            onClick="location.href='updateForm.jsp?num=<%=num%>&page=<%=nowpage%>'">
            
        <input type="button" value="삭제"
            onClick="location.href='deleteForm.jsp?num=<%=num%>&page=<%=nowpage%>'">
            
        <input type="button" value="목록" 
            onClick="location.href='list.jsp?page=<%=nowpage%>'">        
    </td>
</tr>
cs

 

 

2. 댓글 게시판: 댓글

 

- 댓글 작성 폼에서는 먼저 상세 페이지에서 넘겨준 값을 받아야 한다.

 

1
2
3
4
5
6
7
8
9
10
11
12
<% 
  int num=0,ref=1,re_step=0,re_level=0;          // 원문
  String nowpage = "";
 
    if(request.getParameter("num"!= null){  // 답글
        num=Integer.parseInt(request.getParameter("num"));
        ref=Integer.parseInt(request.getParameter("ref"));
        re_step=Integer.parseInt(request.getParameter("re_step"));
        re_level=Integer.parseInt(request.getParameter("re_level"));
        nowpage = request.getParameter("page");
    } 
%>
cs

 

- 그리고 request 객체로 받은 값을 <input> 태그의 hidden 속성으로 다시 넘겨준다.

 

1
2
3
4
5
<input type="hidden" name="num" value="<%=num%>">
<input type="hidden" name="ref" value="<%=ref%>">
<input type="hidden" name="re_step" value="<%=re_step%>">
<input type="hidden" name="re_level" value="<%=re_level%>">
<input type="hidden" name="page" value="<%=nowpage%>">
cs

 

3. 댓글 게시판: 글 수정

 

- 상세 페이지에서 ‘수정’ 버튼을 누를 때, num 값(글의 번호 값)과 page 값(해당 글이 속한 페이지 번호 값)을 전달한다.

 

- 댓글을 작성할 때와 마찬가지로, 수정 폼에서는 ①num, ②page, ③ref, ④re_level, ⑤re_step 값을 전달한다.