자료실에 등록한 관련 파일을 열어놓고 보시기 바랍니다.
기존 파일에서 어느 부분이 수정되었는지 쉽게 아실 수 있습니다.
- view.php 파일 수정하기
아래와 같이 두 부분만 수정하면 됩니다.
먼저, 상단 23행쯤에 보면,
$replyno = $array[replyno];그리고, 하단에 [답변] 버튼을 달아야 하니까, 148행쯤에 다음과 같은 라인이 있을 것입니다.
[답변][답변]을 클릭하면 reply.php 파일이 실행되는데, 이때 replyno의 값을 넘겨주기 위해 23행에서 $replyno 값을 구한 것입니다.
- insert.php 파일 수정하기
63행부터 83행까지를 잘 보시기 바랍니다.
비교적 많이 수정/추가된 부분입니다.$sql = “insert into bbs
values(”,’$name’,’$password’,’$email’,’$homepage’, ‘$subject’,’$memo’,$count,’$ip’,$writetime,’$target1′,’$upfile1_name’,’$target2′,’$upfile2_name’,’$target3′,’$upfile3_name’,”,’AAAAA’)”; // replyno와 replyst의 값을 insert합니다.mysql_query($sql) or die (mysql_error().$sql);
$sql = “select number from bbs where ip=’$ip’ and writetime=$writetime”; // 방금 입력한 글 번호를 찾습니다.
$result = mysql_query($sql) or die (mysql_error().$sql);
$row = mysql_fetch_array($result);
$number = $row[0];$sql = “update bbs set replyno = $number where number = $number”; // 답글이 아니기 때문에 replyno에 원글의 number 값을 대입합니다.
mysql_query($sql) or die (mysql_error()); - list.php 파일 수정하기
30행의 SQL 쿼리가 수정되었습니다.
$query=”select * from $tablename $where order by replyno desc, replyst limit $offset, $list_num”;
원래는 order by number 였는데, 위와 같이 바뀌었습니다.
답변형 게시판 구현 원리 (2/2) TYPE 2 강좌에서 다음과 같이 설명드렸습니다.
⑨ 목록을 보여줄 때는 replyno를 내림차순으로 정렬한 상태에서 reply를 기준으로 오름차순 정렬합니다.위 SQL문이 바로 이런 기능을 하는 것입니다.
주말 잘 보내셨나요?
이상, 동주아빠 손병목이었습니다.
