sockä Geschrieben 16. Januar 2006 Geschrieben 16. Januar 2006 Hallo, ich möchte durch die Datensätze einer Datenbank mittels "next", "previous", "last" und "first" - Links navigieren. Also "next" und "previous" sollen immer den vorherigen bzw. nächsten Datensatz anzeigen und "last" und "first" halt den letzten und ersten. "Last" und "First" habe ich auch schon so gelöst: select MIN(ID) from myTable; select MAX(ID) from myTable; ... aber an "next" und "previous" hapert es gerade... denn wenn ich einfach z.B. ID++; machen würde dann würde ich einen Fehler geben wenn es diese ID nicht gibt... es gibt ja sowas wie ID 1,2,4,5,6 etc. (wenn mal was gelöscht wurde). Gibt es dafür schon eine schnelle, einfache Lösung per SQL und ich sehe sie gerade nicht... oder wie geht das sonst? Bin für jede "Erleuchtung" dankbar Viele Grüße! ps. Datenbank is mysql.
Amstelchen Geschrieben 16. Januar 2006 Geschrieben 16. Januar 2006 vielleicht versteh ich jetzt irgendwas falsch, aber wieso arbeitest du nicht mit LIMIT? s'Amstel
Whatever Geschrieben 16. Januar 2006 Geschrieben 16. Januar 2006 //Nächster $query = "SELECT * FROM tbl WHERE ID > '$aktulle_ID' LIMIT 1"; //Vorheriger $query = "SELECT * FROM tbl WHERE ID < 'aktuelle_ID' LIMIT 1";
kills Geschrieben 16. Januar 2006 Geschrieben 16. Januar 2006 $query = "SELECT * FROM tbl LIMIT ". $limit .", ". $rows_per_page; [/PHP]
sockä Geschrieben 16. Januar 2006 Autor Geschrieben 16. Januar 2006 //Nächster $query = "SELECT * FROM tbl WHERE ID > '$aktulle_ID' LIMIT 1"; //Vorheriger $query = "SELECT * FROM tbl WHERE ID < 'aktuelle_ID' LIMIT 1"; Oh, si, das ist es ja *freu* Da habe ich mich ja wieder in was verrannt... dabei ist es (mal wieder) so einfach... dankeschön dafür ))))
Jaraz Geschrieben 16. Januar 2006 Geschrieben 16. Januar 2006 //Nächster $query = "SELECT * FROM tbl WHERE ID > '$aktulle_ID' LIMIT 1"; //Vorheriger $query = "SELECT * FROM tbl WHERE ID < 'aktuelle_ID' LIMIT 1"; ... wird aber ohne ein passendes ORDER BY nicht immer funktionieren. Gruß Jaraz
sockä Geschrieben 17. Januar 2006 Autor Geschrieben 17. Januar 2006 Hier nochmal der komplette Code, mit ORDER BY und in umgekehrter Reihenfolge beim Zurück-Blättern ... falls es noch mal jemanden in Zukunft interessiert SELECT ID FROM tbl WHERE ID < akt_ID ORDER BY ID DESC LIMIT 1 // zurück SELECT ID FROM tbl WHERE ID > akt_ID ORDER BY ID LIMIT 1 // vor
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden