Frågan 29 sep. 2004 11:14 #1 Hej, jag har följande kod för att läsa alla värden ur en tabell:
while ($array = mysql_fetch_assoc($result)) {
...
}
Men hur gör jag för att läsa tabellen baklänges? Alltså så att de sista värdena i den läses först.
@nders Medlem sedan juni 2000 32 969 inlägg Fel svar på frågan kanske, men kan du inte sortera baklänges direkt i SQL-frågan istället? :)
kjell Medlem sedan dec. 1999 757 inlägg Det blir ju mest optimalt och går det inte av någon anledning finns ju alltid array_reverse() att tillgå.
SQl-frågan ser ut som följer:
$result = mysql_query('SELECT * FROM gb2');
Förslag på hur man vänder på den?
Och är $result verkligen en vanlig vektor? Varför ska man då använda mysql_fetch_assoc?
oHLLe Medlem sedan nov. 2002 302 inlägg Vad har du för fält i tabellen? Om du har ett id-fält så kan du lägga till:
ORDER BY `id` DESC
eller
ORDER BY `id` ASC
till php-frågan beroende på hur du vill ha den sorterad.
Peeer Medlem sedan mars 2002 5 907 inlägg Ett id är väl visserligen inte optimalt att sortera efter (det händer ju att ID'n inte kommer i ordning). Ett eventuellt datumfält är bättre. :)
När skulle ID'n inte komma i ordning? Detta är enkel tabell, där ingenting tas bort eller ändras när det väl kommit dit. Dessutom finns inget datumfält i denna tabell.
Likväl ska jag komma ihåg det där med datumfält.