Einzelnen Beitrag anzeigen

Joe_the_Junkie
(Gast)

n/a Beiträge
 
#2

Re: Suche erweiterten DBNavigator!!!

  Alt 8. Mär 2009, 08:44
Eine Möglichkeit wäre wenn du über SQL-Befehle gehst:

Als erstes erhälst du mit "SELECT COUNT(*) FROM [Tabelle]" Die Anzahl der Zeilen in deiner Tabelle.
Bzw. kannst Du auch schreiben "SELECT COUNT(*) FROM [Tabelle] WHERE {Bedingung}";

Damit erhälst du die Anzahl der Einträge, die deiner Bedingung entsprechen.
Jetzt nimmst du die Anzahl der Lösungen, die du pro Seite zeigen möchtest und erhälst damit die Anzahl der Seiten
die Du brauchst. => Erstes Problem gelöst.

Wenn du jetzt nur eine gewisse Menge anzeigen lassen möchtest kannst du das hiermit machen.

"SELECT * FROM [Tabelle] LIMIT a,b"

Dabei sagt dir "a" wo dein Select anfangen soll.

Wenn "a" z.B. 0 ist fängt er ganz am Anfang an.
Wenn es z. B. 5 ist, fängt er erst ab der 6 Zeile an die Zeilen aus der Datenbank zu holen.

Mit "b" gibst du dann an wieviele Einträge Du aus der Datenbank ziehen möchtest.

Kleines Beipsiel:

"SELECT * FROM [Tabelle] LIMIT 5,10" nimmt die Zeile ab dem 6. Eintrag und gibt von da an die nächsten 10 Einträhe aus.

Am besten ist, alle Einträge haben eine id (Was meistens einegntlich Standart ist).
Dann schreibst du in deine SELECT-Abfrage noch "ORDER BY id ASC, bzw DESC"

ASC bedeutet hier aufsteigend und DESC absteigend.

Wenn man jetzt auf eine Seitenzahl klickt, dann kann man ausrechnen ab welcher Zeile die Datenbank die Daten ausgeben soll.

Sagen wir du willst pro Seite 10 Zeilen Ausgeben:

Als erstes erhälst du als Ergebnis 40 Zeilen. D. h. du hast 4 Seiten.
Klickt man nun auf Seite 2 musst du ja die Einträge von 11 bis 20 ausgeben.

Also "SELECT * FROM [Tabelle] ORDER BY id ASC LIMIT (SEITE -1)*10,10" (SEITE stelle hier eine Variable dar, für die Seite, die angeklickt wurde)

Somit erhälst du die passenden Einträge für deine angeklcikte Seite.


Sry, war garde im schriebrausch, hoffe, hab das nicht zu kompliziert erklärt.

Mfg Joe the Junkie
  Mit Zitat antworten Zitat