SELECT * FROM nyheter ORDER BY id DESC.
Förutsatt att du har ett fält som heter id.
------------------
"Tål det inte att skämtas om, är det inte värt att ta på allvar."
5 svar · 259 visningar · startad av Hulth
Hej.
HIt brukar jag vända mig när jag stöter på problem så nu var det dags igen.
Efter att ha utvecklat ett perfekt nyhets-script i asp så har jag nu gjort en sida som visar alla nyheter och en enskild nyhet. Nu vill jag att den ska visa den senaste nyheten först och det gör den inte. den visar den senaste sist. Hur gör jag?
<!-- #include file = "adovbs.inc" -->
<html>
<head>
<title>Läs gamla nyheter</title>
</head>
<body bgcolor="#FFFFFF" text="#000000">
<%
If Request.Querystring("visa") = "" Then
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("nyheter.mdb")&";"
Set RecSet = Server.CreateObject("ADODB.Recordset")
Addera = "SELECT * FROM nyheter "
RecSet.Open Addera, Connect, adOpenStatic, adLockOptimistic
Do Until RecSet.EOF
%>
<table width="370" border="0" cellspacing="2" cellpadding="0" height="100">
<tr>
<td>
<font size="1" face="Verdana">
<b>
<%=RecSet("rubrik")%>
-
<font color="#993300">
<%=FormatDateTime(RecSet("datum"),vbLongdate)%> av <%=RecSet("person")%>
</font>
</b>
</font>
</td>
</tr>
<tr>
<td>
<font size="1" face="Verdana">
<%=Replace(RecSet("text"),vbCrLf,"<br>")%>
</font>
</td>
</tr>
</table>
<br>
<hr size="1" noshade>
<br>
<%
RecSet.MoveNext
Loop
RecSet.Close
Connect.Close
Set RecSet = nothing
Set Connect = nothing
End If
If Request.Querystring("visa") = "sep" Then
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("nyheter.mdb")&";"
Set RecSet = Server.CreateObject("ADODB.Recordset")
Addera = "SELECT * FROM nyheter WHERE ID = " &Request.QueryString("id")
RecSet.Open Addera, Connect, adOpenStatic, adLockOptimistic
%>
<table width="370" border="0" cellspacing="2" cellpadding="0" height="100">
<tr>
<td>
<font size="1" face="Verdana">
<b>
<%=RecSet("rubrik")%>
-
<font color="#993300">
<%=FormatDateTime(RecSet("datum"),vbLongdate)%> av <%=RecSet("person")%>
</font>
</b>
</font>
</td>
</tr>
<tr>
<td>
<font size="1" face="Verdana">
<%=Replace(RecSet("text"),vbCrLf,"<br>")%>
</font>
</td>
</tr>
</table>
<font face="verdana" size="1">
<a href="nyheter.asp"><-- Tillbaka</a>
</font>
<%
RecSet.Close
Connect.Close
Set RecSet = nothing
Set Connect = nothing
End If
%>
</body>
</html>
------------------
//Hulth
SELECT * FROM nyheter ORDER BY id DESC.
Förutsatt att du har ett fält som heter id.
------------------
"Tål det inte att skämtas om, är det inte värt att ta på allvar."
Hej!
SELECT * FROM tabellen ORDER BY Id DESC
mvh Jörgen :)
------------------
Varför bråka när man kan kramas?
Det beror på hur din tabell är definierad, men du har säkert någon kolumn som anger när en nyhet är inlagd.
I så fall är det bara att använda denna select-sats, med ditt kolumnnamn, istället.
Addera = "SELECT * FROM nyheter order by datumkolumn desc"
------------------
essentitia preter non sans multiplicandum
Hej!
Du får slänga in en sortering, order by, i din sql-fråga. Desc anger du för att sorteringen ska bli fallande.
Addera = "SELECT * FROM nyheter ORDER BY ID DESC"
Mvh,
------------------
All your base are belong to me.
Hallå!
Jag tror att det ska gå att lösa genom att lägga till " ORDER BY Datum DESC" på slutet av din sql-sträng.
Datum är namnet på den kolumnen som du har datumen på nyheterna lagrade i.