BlackBoard (http://www.black-board.net/index.php)
- Design, Programmierung & Entwicklung (http://www.black-board.net/board.php?boardid=55)
-- Programmieren (http://www.black-board.net/board.php?boardid=4)
--- Mehrseitige DB-auslese (http://www.black-board.net/thread.php?threadid=22082)
Geschrieben von SpL!T am 21.04.2006 um 12:12:
Mehrseitige DB-auslese
Huhu,
Programmiere mir momentan ein kleines eigenes Forum.
Klappt alles wunderbar bisher. Nur überlege ich mir, wie ich es realisieren kann, z.B. 30 Einträge auf 3 Seiten zu je 10 Einträgen zu verteilen. (wie man es halt in allen Foren so sieht).
Meine Idee:
php: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
|
// standart variablen:
$limit = 10;
$siteid = 1;
select * from forum where threadid = 'xy' and limit = '$limit';
// durch klick auf "Seite2" wird die variable "$siteid=2" mitgegeben.
if ($siteid==2) {
$limit = 20;
} |
|
nun würden beiträge 1-20 ausgelesen ich will aber nur 10-20...
1. Findet ihr die Variante halbwegs sinvoll oder kennt jemand eine deutlich einfachere/bessere Möglichkeit, das zu lösen?
2. Wie kann ich von 30 Einträgen, die Einträge 10 - 20 auslesen?
mfg
Geschrieben von LX am 21.04.2006 um 12:40:
LIMIT in SQL akzeptiert einen oder zwei Parameter. Bei einem einzelnen werden besagte Anzahl Zeilen zurückgegeben, bei 2 Parametern y Anzahl Zeilen beginnend ab x. Beispiel:
code: |
1:
|
SELECT * FROM beitraege LIMIT 10,20; |
|
Geschrieben von SpL!T am 21.04.2006 um 12:56:
*verbeug* thänks.
vllt. noch jemand was zu 1. zu sagen?
Geschrieben von phlox81 am 21.04.2006 um 15:18:
Hm, ansonsten könnte man eine spalte in den beiträgen führen,
wo dann verzeichnet ist, auf welcher seite diese sind. ABer so wirklich
sinnvoll ist das nicht. LIMIT x,y ist da schon besser.
Geschrieben von Flobre am 21.04.2006 um 15:30:
Zitat: |
Original von phlox81
Hm, ansonsten könnte man eine spalte in den beiträgen führen,
wo dann verzeichnet ist, auf welcher seite diese sind. ABer so wirklich
sinnvoll ist das nicht. LIMIT x,y ist da schon besser. |
oha und dann jedes mal komplett durchlaufen lassen, wenn ein beitrag gelöscht wird?
Geschrieben von phlox81 am 21.04.2006 um 16:40:
Zitat: |
Original von Flobre
Zitat: |
Original von phlox81
Hm, ansonsten könnte man eine spalte in den beiträgen führen,
wo dann verzeichnet ist, auf welcher seite diese sind. ABer so wirklich
sinnvoll ist das nicht. LIMIT x,y ist da schon besser. |
oha und dann jedes mal komplett durchlaufen lassen, wenn ein beitrag gelöscht wird?
|
Von löschen war nie die Rede
Generell sollte auch ein Gelöschter post als solcher angezeigt werden,
finde ich, also behält der Datensatz seine gültigkeit, nur der Status ändert sich.
Sonst bekommst du Probleme, wenn dich jemand rechtlich belangt,
und der User mal eben die Beiträge löscht...
phlox
Geschrieben von LX am 21.04.2006 um 17:08:
Das ist Korrekt, aber wenn du auf einer Seite 7 von 10 Beiträgen auf "gelöscht" setzt, hast du Fransenseiten, wenn die Seitenzuordnungen so bleiben.
Aber hast es ja selber schon gesagt: LIMIT passt schon.
Forensoftware: Burning Board 2.3.6, entwickelt von WoltLab GmbH