webForumDet fria alternativet

Order by desc fel

PHP

5 svar · 274 visningar · startad av mr.mainline

Medlem sedan feb. 2003777 inlägg
Frågan#1

Jag har typ som en gäst bok,alla inlägg ska lägga sig över varandra, och har en sql som der ut så här "SELECT * FROM tabellen ORDER BY id DESC"
Med jag får bara ut det senaste inlägget inte de andra,jag har kollat databasen och där lägger sig alla inlägg.

Tar jag bort "id" så får jag fel mess "You have an error in your SQL syntax near 'DESC' at line 1"

Medlem sedan juni 20014 290 inlägg
#2

Hur skriver du ut gästboken?

Prova så här:

$query="SELECT * FROM tabellen ORDER BY id DESC";
$result=mysql_query($query);
while($row=mysql_fetch_array($result, MYSQL_ASSOC)) {
  printf("%s\n", $row["id"]);
  .
  .
  .
}
Medlem sedan feb. 2003777 inlägg
#3
$sql = mysql_query("SELECT * FROM tabellen ORDER BY id DESC") or die(mysql_error()); 
$row = mysql_fetch_array($sql) ;

include 'func.php' ;

echo   "<b>".$row['rubrik']." ". $row['datum']."</b>" ;
echo bbkod($row['inlagg']);
echo "<br><b>" . "Rapporterat av: ". ($row['namn'] . " </br></b> ");

jag skiver ut det så här.

Medlem sedan juni 20006 031 inlägg
#4

Du måste loopa ut inläggen med en while-sats.

<?php
include 'func.php' ;
$sql = mysql_query("SELECT * FROM tabellen ORDER BY id DESC") or die(mysql_error());
while ($row = mysql_fetch_array($sql)) {
echo   "<b>".$row['rubrik']." ". $row['datum']."</b>" ;
echo bbkod($row['inlagg']);
echo "<br><b>" . "Rapporterat av: ". ($row['namn'] . " </br></b> ");
}
?>
Medlem sedan mars 2004230 inlägg
#5

Ursäkta att jag tar för mig här, men hur skulle en sådan (for?) loop se ut om man bara vill visa tio resultat?

Medlem sedan juni 20006 031 inlägg
#6

Det gör du med LIMIT 10

SELECT * FROM tabellen ORDER BY id DESC LIMIT 10
259 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
126 ms — deklarationer (db)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)