webForumDet fria alternativet

Hämta 5 sista poster i db?

ASP

24 svar · 396 visningar · startad av Lazerzubb · sida 2 av 2

Frågan, av Lazerzubb

Jag ska göra ett nyhetsystem, men kan inte använda SQL Top 5 För att tabellerna för de presenteras inte de samma, jag har har Titel Text Datum Tid I databasen (access) Hur gör jag så att jag hämtar den sista titel, text, datum och tid i databasen, och sedan fortsätter så och presenterar de 5 senast inlagda titel, text, datum och tid. Tack på förhand.

Läs frågan i sin helhet →
Medlem sedan mars 2000542 inlägg
#21

<edit>Trodde jag hade löst det: (Alla läser koden och tänker vilkej J*vla Idiot :D )

sql = "select top 2 * from news order by ID desc"
set rs=Connect.Execute(SQL)
%>

<table cellspacing=0 cellpadding=0 width="100%" 
                                border=0>
<%do while rs.eof%>

<table width="100%" border="0" cellspacing="0" cellpadding="0">
  <tr><td><%=rs("titel")%></td></tr>
  <tr><td><%=rs("text")%></td></tr>
</table>
<%rs.movenext
loop%>
<table width="90%" border="0" cellspacing="0" cellpadding="0">
  <tr><td><%=rs("titel")%></td></tr>
  <tr><td><%=rs("text")%></td></tr>
</table>

<%
rs.close
set rs=Nothing
Connect.close
set connect=nothing
%>
Medlem sedan aug. 2002106 inlägg
#22

Men nu loopar du ju i alla fall... :q

Medlem sedan mars 2000542 inlägg
#23

Jepp kom precis på att koden inte funkar! Jag håller på att bli gallen! vad är fel i koden ovan!

Så här ser databasen ut.
ID TITEL TEXT
1 1 2
2 3 4
3 5 6
4 7 8
5 9 10

Så i slutet ska sidan vara (Och värdena presenteras i olika HTMLstyles):

9
10

7
8

5
6

3
4

1
2

Medlem sedan aug. 2002106 inlägg
#24

Enligt ditt exempel så är ju HTML koden densamma för presentation av båda posterna, men skit i det ;)

En "Do" förutsätter en "Loop", liksom en "For" kräver en "Next". Strunta i den! Här kommer ett exempel, inte snyggt men ändå :)

<%
    sql = "select top 2 * from news order by ID desc"
    set rs=Connect.Execute(SQL)

    if Not rs.eof then
%>

<table width="100%" border="0" cellspacing="0" cellpadding="0">
  <tr><td><%=rs("titel")%></td></tr>
  <tr><td><%=rs("text")%></td></tr>
</table>
<%
    end if
    rs.movenext
    if Not rs.eof then
%>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
  <tr><td><%=rs("titel")%></td></tr>
  <tr><td><%=rs("text")%></td></tr>
</table>

<%
end if
rs.close
set rs=Nothing
Connect.close
set connect=nothing
%>

Du får upprepa detta för det antal poster du vill presentera. Får man fråga vad det är som förändras för varje post som presenteras?

Medlem sedan mars 2000542 inlägg
#25

Jepp så var det
MULTITACK!

249 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
124 ms — deklarationer (db)
0 ms — hämta statistik (cache)
122 ms — hämta tråd, inlägg och bilagor (db)
124 ms — ändringar (db)