제목 : 계층형 게시판 로직(최근글 하단으로 표시)
글번호:
|
|
186
|
작성자:
|
|
레드플러스
|
작성일:
|
|
2004/04/27 오후 10:59:00
|
조회수:
|
|
11325
|
계층형 게시판 로직(최근글 하단으로 표시)
------------------------------------------------------------------------------------------
<%
Set Dbcon = Server.CreateObject("ADODB.Connection")
Dbcon.Open strconnect
SQL = "Select MAX(numm) from " & table
Set Rs = Server.CreateObject("ADODB.Recordset")
Rs.Open SQL,Dbcon
If IsNULL(Rs(0)) Then
number = 1
else
number = Rs(0) + 1
End If
Rs.Close
b_id = request("id")
if b_id <> "" then '즉 답변쓰기라면
myref = CDbl(request("ref"))
mystep = CDbl(request("step"))
mylevel = CDbl(request("level"))
'************* 완전한 계층형 추가부분 시작***********************
SQL = " SELECT * FROM " & table
SQL = SQL & " WHERE ref = " & myref
SQL = SQL & " AND step > " & mystep
SQL = SQL & " AND re_level <= " & mylevel & " ORDER BY step "
Rs.Open SQL, Dbcon
If Not Rs.EOF then
Bro_Step = Rs("step")
End if
Rs.Close
If Bro_Step <> "" then
'STR = "부모와 같은 레벨의 답이 있다"
SQL = " SELECT * FROM " & table
SQL = SQL & " WHERE ref = " & myref
SQL = SQL & " AND step > " & myStep
SQL = SQL & " AND step < " & Bro_Step
SQL = SQL & " AND re_level > " & mylevel & " ORDER BY step DESC"
Else
'STR = "부모와 같은 레벨의 답이 없다"
SQL = " SELECT * FROM " & table
SQL = SQL & " WHERE ref = " & myref
SQL = SQL & " AND step > " & myStep
SQL = SQL & " AND re_level > " & mylevel
SQL = SQL & " ORDER BY step DESC"
End if
Rs.Open SQL, Dbcon
If Not Rs.EOF then
myStep = Rs("step")
End if
Rs.Close
Set Rs = Nothing
'**************** 완전한 계층형 추가부분 끝 ***********************
Application.Lock
SQLString = "UPDATE " & table & " SET step = step + 1 WHERE ref=" &
myref & " AND step > " & mystep
Dbcon.Execute(SQLString)
Application.unLock
newstep = mystep + 1
newlevel = mylevel + 1
else ' 첨 글쓰기라면...
myref = number
newstep=0
newlevel=0
end if
이하 Insert 문은 이전과 동일..