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. Zitieren
Amstelchen Geschrieben 16. Januar 2006 Geschrieben 16. Januar 2006 vielleicht versteh ich jetzt irgendwas falsch, aber wieso arbeitest du nicht mit LIMIT? s'Amstel Zitieren
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"; Zitieren
kills Geschrieben 16. Januar 2006 Geschrieben 16. Januar 2006 $query = "SELECT * FROM tbl LIMIT ". $limit .", ". $rows_per_page; [/PHP] Zitieren
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 )))) Zitieren
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 Zitieren
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 Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.