<% Option Explicit Dim ConnectString, sql, conn, rsEntry, rsReplies, id, root, replies, enhanceStart, enhanceEnd, rsRoot, indents, indentstring, count, arrowtype id = Request.QueryString("id") root = Request.QueryString("root") replies = Request.QueryString("replies") ConnectString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("philbbs.mdb") Set conn = Server.CreateObject("ADODB.Connection") conn.open ConnectString sql = "SELECT * FROM messages WHERE id = " & id Set rsEntry = Server.CreateObject("ADODB.Recordset") rsEntry.Open sql, conn, 3, 3 sql = "SELECT subject, by FROM messages WHERE id = " & root Set rsRoot = Server.CreateObject("ADODB.Recordset") rsRoot.Open sql, conn, 3, 3 %> Houseview

Message posting:

[back to message board]

Subject : <%=rsEntry("subject")%>
By : <%=rsEntry("by")%>
Posted : <%=rsEntry("datetime")%>

Message :
<%=rsEntry("message")%>

Reply to this message

<%if replies = "True" then%>

Reply Thread :

Back to Root Messages
<%if rsEntry("id") = CInt(root) then enhanceStart = "" enhanceEnd = "" else enhanceStart = "" enhanceEnd = "" end if%> <%=enhanceStart%><%=rsRoot("subject")%><%=enhanceEnd%> by <%=rsRoot("by")%>
<%sql = "SELECT subject, id, by FROM messages WHERE replyto = " & root & " ORDER BY datetime DESC" Set rsReplies = Server.CreateObject("ADODB.Recordset") rsReplies.Open sql, conn, 3, 3%> <%do until rsReplies.EOF if rsReplies("id") = rsEntry("id") then enhanceStart = "" enhanceEnd = "" arrowtype = "_current" else enhanceStart = "" enhanceEnd = "" arrowtype = "" end if%> <%=enhanceStart%>&root=<%=root%>&replies=True"><%=rsReplies("subject")%><%=enhanceEnd%> by <%=rsReplies("by")%>
<% displayMessages rsReplies("id"), 0 rsReplies.Movenext loop rsReplies.close set rsReplies = nothing end if%>

Reply to this message...

Name
Subject ">
Message
<% rsRoot.close set rsRoot = nothing rsEntry.close set rsEntry = nothing conn.close set conn = nothing Function displayMessages(id,indents) dim rsRReplies sql = "SELECT * FROM messages WHERE replyto = " & id & " ORDER BY datetime DESC" set rsRReplies=server.createObject("ADODB.Recordset") rsRReplies.open sql,conn do until rsRReplies.EOF if rsRReplies("id") = rsEntry("id") then enhanceStart = "" enhanceEnd = "" arrowtype = "_current" else enhanceStart = "" enhanceEnd = "" arrowtype = "" end if indentstring = "     " for count = 1 to indents indentstring = indentstring & "     " next indentstring = indentstring & ""%> <%=indentstring%><%=enhanceStart%>&root=<%=root%>&replies=True"><%=rsRReplies("subject")%><%=enhanceEnd%> by <%=rsRReplies("by")%> on <%=rsRReplies("datetime")%>
<% displayMessages rsRReplies("id"), indents + 1 rsRReplies.movenext loop rsRReplies.close set rsRReplies=nothing End Function %>