Angående sorteringordning, testa att ändra asc till desc alltså:
SQL = SQL & " AND svar_id = 0 ORDER BY svar_id DESC"
Frågan#1
Har på min sajt ett forum, som från grunden byggde på ett jag laddade ner från Webeye.
Har använt det och modifierat det lite grann, men har kört fast på ett par grundläggande punkter.
Som standard sorteras trådarna så den äldsta hamnar överst, och den med senaste inläggen underst. När man börjar få en ohygglig massa trådar blir det besvärligt, eftersom jag dessutom inte lyckats få någon bra paging att fungera.
Någon som orkar cruncha igenom koden och kanske komma med konstruktiva idéer om
a. omvänd sorteringsordning
b. fungerande paging
klipper från sidan forum.asp
<tr><td colspan="5" class="ruta" align=left style="padding: 2px">
<%
Session.LCID = 1053
SQL = "select * from k_forum where id="&Request.Querystring("id")
Set RecSet = Databas.Execute(SQL)
inget = ""
SQL = "select * from k_inlagg where forum_id="&Request.Querystring("id")
SQL = SQL & " AND svar_id = 0 ORDER BY svar_id asc"
Set RecSet2 = Databas.Execute(SQL)
%>
<span class="rubrik"><%=RecSet("namn")%></span>
<br><%=RecSet("beskrivning")%>
<p>
<tr>
<td colspan="5" class="ruta" align=left style="padding: 2px">
<a href=forum_start.asp>Alla forum</a> | <%=RecSet("namn")%> | <a href=forum_nytt_inlagg.asp?forum_id=<%=Request.Querystring("id")%>>Ny tråd</a>
</td>
</tr>
<tr>
<td class="ruta" align=left style="padding: 2px" ></td>
<td class="ruta" style="padding: 2px"><b>Ämne</b></td>
<td class="ruta" style="padding: 2px"><b>Startat av</b></td>
<td class="ruta" style="padding: 2px"><b>Svar</b></td>
<td class="ruta" align=right style="padding: 2px" width=150><b>Senaste inlägg</b></td>
</tr>
<%
Do While NOT RecSet2.EOF
SQL = "select * from k_inlagg where forum_id="&Request.Querystring("id")
Set RecSet_inlagg = Databas.Execute(SQL)
SQL = "select count(*) AS count_svar from k_inlagg where svar_id="&RecSet2("id")
Set RecSet_count_svar = Databas.Execute(SQL)
SQL = "select count(*) AS datum_check from k_inlagg where svar_id="&RecSet2("id")
Set RecSet_datum_check = Databas.Execute(SQL)
If RecSet_datum_check("datum_check") <> 0 then
SQL = "select datum from k_inlagg where svar_id="&RecSet2("id")
SQL = SQL & " order by datum desc"
Set RecSet_datum = Databas.Execute(SQL)
Else
SQL = "select datum from k_inlagg where id="&RecSet2("id")
SQL = SQL & " order by datum desc"
Set RecSet_datum = Databas.Execute(SQL)
End If
cnt = cnt + 1
strColor = "#F2F8FF"
If cnt Mod 2 = 0 then strColor = "#E3EEFB"
If Cint(Request.Querystring("str_id")) = Cint(RecSet2("id")) then
SQL = "select * from k_inlagg where svar_id="&RecSet2("id")
Set RecSet_svar = Databas.Execute(SQL)
%>
<tr bgcolor=<%=strColor%>>
<td width=1><a href=forum.asp?id=<%=Request.Querystring("id")%>&str_id=0>-</a></td>
<td><a href=forum_inlagg.asp?forum_id=<%=Request.Querystring("id")%>&inlagg_id=<%=RecSet2("id")%>><%=RecSet2("amne")%></td>
<td><%=RecSet2("skribent")%></td>
<td><%=RecSet_count_svar("count_svar")%></td>
<td><% d = RecSet2("datum") %><%=Right("0" & Day(d),2)%> <% =LCase(Monthname(Month(d), True))%> <% =Year(d)%> - <%=Right("0" & Hour(d),2)%>:<%=Right("0" & Minute(d),2)%></td>
</tr>
<%
Do Until RecSet_svar.EOF
SQL = "select * from k_inlagg where id = " & RecSet_svar("id")
Set RecSet_svar2 = Databas.Execute(SQL)
%>
<tr bgcolor=<%=strColor%>>
<td width=1></td>
<td> <a href=forum_inlagg.asp?forum_id=<%=Request.Querystring("id")%>&inlagg_id=<%=RecSet2("id")%>#<%=RecSet_svar("id")%>><%=RecSet_svar("amne")%></td>
<td colspan=2><%=RecSet_svar("skribent")%></td>
<td><% d = RecSet2("datum") %><%=Right("0" & Day(d),2)%> <% =LCase(Monthname(Month(d), True))%> <% =Year(d)%> - <%=Right("0" & Hour(d),2)%>:<%=Right("0" & Minute(d),2)%></td>
</tr>
<%
RecSet_svar.MoveNext
Loop
Else
%>
<tr bgcolor=<%=strColor%>>
<td width=1>
<% If RecSet_count_svar("count_svar") <> 0 then %>
<a href=forum.asp?id=<%=Request.Querystring("id")%>&str_id=<%=RecSet2("id")%>>+</a>
<% End If %>
</td>
<td><a href=forum_inlagg.asp?forum_id=<%=Request.Querystring("id")%>&inlagg_id=<%=RecSet2("id")%>><%=RecSet2("amne")%></td>
<td><%=RecSet2("skribent")%></td>
<td><%=RecSet_count_svar("count_svar")%></td>
<td><% d = RecSet_datum("datum") %><%=Right("0" & Day(d),2)%> <% =LCase(Monthname(Month(d), True))%> <% =Year(d)%> - <%=Right("0" & Hour(d),2)%>:<%=Right("0" & Minute(d),2)%></td>
</tr>
<%
End If
Set RecSet_count_svar = nothing
Set RecSet_datum_check = nothing
Set RecSet_datum = Nothing
Set RecSet_inlagg = Nothing
RecSet2.MoveNext
Loop
Set RecSet2 = nothing
%>