Hur vet du att ett inlägg hamnar på sida 2? Har du något sekvensnummer (inom tråden) för varje inlägg?
Annars så måste du räkna ut hur många inlägg det finns som är gjorda innan det aktuella och utifrån det beräkna sidnummer.
5 svar · 218 visningar · startad av Asa
Jag har en sökfunktion och när alla sökresultat listas vill jag att den ska kolla vilken sida just det inlägget har i tråden.
Testa å sök på Chippi här: http://forum.gruvsjo.com/sok.asp
10 av inläggen finns då på sidan 2.
Hur gör jag? Denna kod är den som visar rubrikerna.
<tr height="20" bgcolor="<%=Farg%>">
<td><b>»</b>
<a href="forum.asp?id=<%If RecSet("uid") = "0" Then%> <%=RecSet("id")%>#<%=RecSet("id")%><%Else%><%=RecSet("uid")%>#<%=RecSet("id")%><%End If%>"><%=Left(Subject,70)%></a>
</td>
</tr>
Hur vet du att ett inlägg hamnar på sida 2? Har du något sekvensnummer (inom tråden) för varje inlägg?
Annars så måste du räkna ut hur många inlägg det finns som är gjorda innan det aktuella och utifrån det beräkna sidnummer.
Jag måste räkna ut det men Count(*) på andra ställen men vet inte riktigt hur jag gör det nu i sökresultaten!
Ok, då borde du i din sökfråga kunna lägga till en beräkning för att få fram inläggets ordningsnummer
select posts.* , (select count(*) from posts
where id >= p.uid
and id < p.id
and uid = p.uid ) as odinal
from posts as p
where message like '%searchWord%'
or title like '%searchWord%'
Jag gissar lite men jag tänker att du har ungefär följande tabellstruktur
posts
--------
id -- räknare
uid -- id för första inlägget i en tråd
message -- inläggstext
title -- titel för inlägget
Ska testa och återkommer!
Min SQL ser nu ut så här:
SQL = "SELECT * FROM forum WHERE"
varSearchWord = Split(sokord)
For N = 0 TO UBound(varSearchWord)
SQL = SQL & " " & subj & " Like '%" & varSearchWord(N) & "%' And"
Next 'N
'## -- ta bort det sista , i strängen. annars blir det fel vid exekveringen --
SQL = Left(SQL,Len(SQL) - 3)
SQL = SQL & " ORDER BY Id " & sort
Hur lägger jag in din kod? Eller fattar jag helt fel nu?