웹마스터 팁
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
[추천 소스] 게시판 답글 알고리즘..(서기생각 -_-;;)
2002.04.10 04:59
우선. 게시판이라면...
no <- 고유번호 필드임미다.
sortno <- 정렬 필드임미다. 답글의 가장 핵심이라구 할수 있져.. -_-;;
depth <- 깊이필드임미다. 답글이면. 한단계씩 들어가게 하려구. -_-;;
head <- 부모게시물의 번호를 기억하는 필드임미다. 답글달린 게시판 안지워지게하려궁 -_-;;
father <- 가장 윗부모 게시물의 필드임미다. 관련 게시물보기 구현하려구.. -_-;;
title <- 제목임미다.. 제가 설명하기 편하게 하려구 -_-;;
적어도 위와같이 필요하겠죠...
그럼...
no sortno depth head father title
1 1 0 0 0 안냐세염..
하나의 게시물을 쓰면 위와같이 되져... 여기서 하나를 더 기록하게 되면..
no는 그냥 추가시키되.... sort는
기존 게시물중 가장 큰값을 가져와서 +1 을 더해 추가시킵니다..
즉..
select max(sortno) from 테이블명
으로 가져오면 되겠져...
no sortno depth head father title
1 1 0 0 0 안냐세염..
2 2 0 0 0 반갑습니다.
3 3 0 0 0 감사함미다. -_-;;
여기서.. 1번글의 답변을 쓴다고 가정하죠...
그러면.. 1번글의 sortno보다 큰 값들은 전부 1을 증가시킵니다.
update board set sortno=sortno+1 where sortno>=1
그런뒤에.. depth는 1로.. head는 1번글의 번호값을.... father에는 1번글을 기록합니다.
no sortno depth head father title
1 2 0 0 0 안냐세염..
2 3 0 0 0 반갑습니다.
3 4 0 0 0 감사함미다. -_-;;
4 1 1 1 1 re> 1번글 답변입니다..
그리구 보여줄때... 정렬순서를 order by sortno desc로 보여주면 되겠죠..
대강 답글개념을 정리해봤습니다. -_-;;
어디까지내 제가 게시판 작성하면서.. 생각해본 알고리즘이라.. 더 잘짜시는 분들은 다른 방법도 있을겁니다.
참고로 제로보드 3.x까지는 이 방식을 이용했는데..
4.x부터는 값이 거꾸로 떨어지게끔 했더군요...
흠흠.. 다음에는 저두 그러케 해보고 싶다는.. 쿨럭!!!
no <- 고유번호 필드임미다.
sortno <- 정렬 필드임미다. 답글의 가장 핵심이라구 할수 있져.. -_-;;
depth <- 깊이필드임미다. 답글이면. 한단계씩 들어가게 하려구. -_-;;
head <- 부모게시물의 번호를 기억하는 필드임미다. 답글달린 게시판 안지워지게하려궁 -_-;;
father <- 가장 윗부모 게시물의 필드임미다. 관련 게시물보기 구현하려구.. -_-;;
title <- 제목임미다.. 제가 설명하기 편하게 하려구 -_-;;
적어도 위와같이 필요하겠죠...
그럼...
no sortno depth head father title
1 1 0 0 0 안냐세염..
하나의 게시물을 쓰면 위와같이 되져... 여기서 하나를 더 기록하게 되면..
no는 그냥 추가시키되.... sort는
기존 게시물중 가장 큰값을 가져와서 +1 을 더해 추가시킵니다..
즉..
select max(sortno) from 테이블명
으로 가져오면 되겠져...
no sortno depth head father title
1 1 0 0 0 안냐세염..
2 2 0 0 0 반갑습니다.
3 3 0 0 0 감사함미다. -_-;;
여기서.. 1번글의 답변을 쓴다고 가정하죠...
그러면.. 1번글의 sortno보다 큰 값들은 전부 1을 증가시킵니다.
update board set sortno=sortno+1 where sortno>=1
그런뒤에.. depth는 1로.. head는 1번글의 번호값을.... father에는 1번글을 기록합니다.
no sortno depth head father title
1 2 0 0 0 안냐세염..
2 3 0 0 0 반갑습니다.
3 4 0 0 0 감사함미다. -_-;;
4 1 1 1 1 re> 1번글 답변입니다..
그리구 보여줄때... 정렬순서를 order by sortno desc로 보여주면 되겠죠..
대강 답글개념을 정리해봤습니다. -_-;;
어디까지내 제가 게시판 작성하면서.. 생각해본 알고리즘이라.. 더 잘짜시는 분들은 다른 방법도 있을겁니다.
참고로 제로보드 3.x까지는 이 방식을 이용했는데..
4.x부터는 값이 거꾸로 떨어지게끔 했더군요...
흠흠.. 다음에는 저두 그러케 해보고 싶다는.. 쿨럭!!!
댓글 2
제목 | 글쓴이 | 날짜 |
---|---|---|
[OsE=] Session을 배워보자~ [#3] [1] | OsE= | 2002.03.02 |
[OsE=] Session을 배워보자~ [#2) | OsE= | 2002.03.02 |
[OsE=] Session을 배워보자~ [#1] | OsE= | 2002.03.02 |
[OsE=] 프로그래밍하시는 분들은...생각에 틀에서.. [4] | OsE= | 2002.03.02 |
[OsE=] 게시판 만들시.... 전체 html적용 [4] | OsE= | 2002.03.02 |
[OsE=] 오스보드에 적용된 페이징 방법(알고리즘?) | OsE= | 2002.03.02 |
[OsE=] 비교해서 HTML 출력 [2] | OsE= | 2002.03.02 |
[OsE=] 보안문제.. 남의 일이아닙니다. [1] | OsE= | 2002.03.02 |
[씽크식 PHP] 상수 [1] | John Sync. | 2002.02.26 |
[OsE=] Mysql 전체 리스트 갯수 불러올때 [3] | OsE= | 2002.02.26 |
[OsE=] 간단한 PHP_SELF.. 그냥 참고하세요 [7] | OsE= | 2002.02.26 |
[씽크식 PHP] PHP로 그라데이션 효과 구현하기. | John Sync. | 2002.02.26 |
[씽크식 PHP] 메일보낼때 Header설정으로 From 알려주기. [1] | John Sync. | 2002.02.26 |
[씽크식 PHP] 글자 하나씩 때어놓기.. [3] | John Sync. | 2002.02.25 |
[씽크식 PHP] 씽크의 경로중 맨 앞 슬래시(/) 제거 함수 [2] | John Sync. | 2002.02.25 |
제가 쓰는 alert 함수를 공개하지요.^^ [5] | Zeldign | 2002.02.25 |
^^ 좀더 다양한 Alert(); 함수화~ [3] | 도라에몽 | 2002.02.25 |
귀찮은 쿼리문을 함수화 해보자.. [1] | 도라에몽 | 2002.02.25 |
[씽크식 PHP] 노프레임에서 "역"으로 인클루드 쓰기. [14] | John Sync. | 2002.02.24 |
많고 많은 페이지들을 하나로 줄이자! [7] | 제키드+_+)/ | 2002.02.23 |