Threadmenge
Harald
- datenbank
Hallo @ all,
Ich habe schon vor längerem ein kleines Forum programmiert, welches unter http://forum.ScienceSource.info zu finden ist, doch habe jetzt einen kleinen Fehler entdeckt.
Sieht man sich in der Baumansicht -> Die letzten Threads anzeigen (ganz unten) die Threads von 15-30 an, so werden 17 Threads ausgegeben!?
Ich dachte vielleicht an eine Falsche Zahl, die an die Datenbankabfrage übergeben wird, daher momentan neben dem Feld die momentan ausgegebenen Threads, doch auch hier, 15-30.
Damit kann es nur an der MySQL-Datenbankabfrage liegen, ich wüsste allerdings auch nicht wieso, der hierfür wesentliche Teil des mysql_query-Elements sieht wie folgt aus (bei der Ausgabe der 2 Zahlen neben dem auswahlfeld handelt es sich um die 2 Variablen):
WHERE PID = 0 ORDER BY ID DESC LIMIT $beginn, $ende
Ich hoffe ihr habt eine Idee, und könnt mir weiterhelfen, sonderbar finde ich auch, wie unschwer im Forum zu erkennen, die erste Seite funktioniert einwandfrei.
---------------
Mfg: Harry
Hallo,
Sieht man sich in der Baumansicht -> Die letzten Threads anzeigen (ganz unten) die Threads von 15-30 an, so werden 17 Threads ausgegeben!?
Ich dachte vielleicht an eine Falsche Zahl, die an die Datenbankabfrage übergeben wird, daher momentan neben dem Feld die momentan ausgegebenen Threads, doch auch hier, 15-30.
Damit kann es nur an der MySQL-Datenbankabfrage liegen, ich wüsste allerdings auch nicht wieso, der hierfür wesentliche Teil des mysql_query-Elements sieht wie folgt aus (bei der Ausgabe der 2 Zahlen neben dem auswahlfeld handelt es sich um die 2 Variablen):WHERE PID = 0 ORDER BY ID DESC LIMIT $beginn, $ende
http://www.mysql.de/doc/de/SELECT.html
Die LIMIT-Klausel wird benutzt, um die Anzahl von Zeilen, die vom SELECT-Statement zurückgegeben werden, zu beschränken. LIMIT erwartet ein oder zwei numerische Argumente. Wenn zwei Argumente angegeben sind, legt das erste den Offset der ersten Zeile fest, die zurückgegeben wird, und das zweite gibt die maximale Anzahl von Zeilen an, die zurückgegeben werden. Der Offset der anfänglichen Zeile ist 0 (nicht 1):
mysql> select * from tabelle LIMIT 5,10; # Zeilen 6 bis 15 zurückgeben
Deine Variablen heißen falsch.
WHERE PID = 0 ORDER BY ID DESC LIMIT $beginn, $ende
sollte heißen:
...WHERE PID = 0 ORDER BY ID DESC LIMIT $beginn, $anzahl
Wenn $beginn = 15 und $anzahl = 30, dann werden maximal 30 Datensätze, beginnend mit dem 16. Datensatz ausgegeben.
viele Grüße
Axel