Letzten 50 Datensätze ausgeben

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Letzten 50 Datensätze ausgeben

    Hallo,

    wie kann ich mir die letzten 50 Datensätze der DB ausgeben lassen. So kommen alle Datensätze raus, ich will aber das nur DIE LETZTEN!! 50 rauskommen und auch nach id DESC; geordnet werden. Ich habs probiert mit LIMIT -50, funktioniert aber nicht.

    $sql = mysql_query("SELECT * FROM $table ORDER BY id DESC;");

    Andi

  • #2
    hmm,

    also LIMIT ist imemr positiv LIMIT 1,50 zB. oder du machst einfach eine Schleife beim Auslesen, was du sowieso machen musst, da machste noch eienen Zaehelr rein der bei 50 aufhört, egal ob noch was zum auslesen da ist.

    Kommentar


    • #3
      zwei Möglichkeiten:

      1) absteigend sortieren mit "LIMIT 0,50", dann bekommst du die letzten 50 in umgekehrter Reihenfolge. Wenn du sie dann richtig rum ausgeben willst, musst du alle in ein Array einlesen und das Array nach array_reverse ausgeben:
      PHP-Code:
      $sql mysql_query("select * from $table order by id desc limit 0,50");
      $array = array();
      while (
      $a mysql_fetch_assoc($sql)) $array[] = $a;
      $array array_reverse($array);
      foreach (
      $array as $a)
      {
        ...

      2) erst mit "select count(*) from $table" die Anzahl der Datensätze holen, dann mit einer extra Query die letzten 50 Datensätze holen:
      PHP-Code:
      $sql mysql_query ("select count(*) from $table");
      list(
      $anzahl) = mysql_fetch_row($sql);
      $sql mysql_query ("select * from $table order by id asc limit "
        
      . ($anzahl-50). ",50");
      while (
      $a mysql_fetch_assoc($sql))
      {
        ...

      mein Sport: mein Frühstück: meine Arbeit:

      Sämtliche Code-Schnipsel sind im Allgemeinen nicht getestet und werden ohne Gewähr auf Fehlerfreiheit und Korrektheit gepostet.

      Kommentar

      Lädt...
      X