![]() |
[MySQL] Problem mit LIMIT
Hi,
ich versuche schon die ganze Zeit meine Downloads auf ein Limit von 3 zu setzen aber leider gelingt mir das nicht so richitg. Pro Seite sollen also 3 Downloads angezeigt werden. Ich habe eine Tabelle. Dort befinden sich alle Programme mit den jeweiligen Infos drinn. Ein Feld nennt sich "categorie" damit ich die Programme der Kategorie zuweisen kann. Wenn jamand auf "Tools" klickt wird die Kategorie (für Tools "5") übertragen. Nun sollen alle Datensätze mit der Kat. ausgewählt, sortiert und pro Seite begrenzt werden. Wenn ich LIMIT nicht benutze funktioniert alles bestens.
Delphi-Quellcode:
x... Seite
$readdata=mysql_query("SELECT * FROM downloads WHERE categorie='$get' ORDER BY date DESC LIMIT x,3");
while($row = mysql_fetch_assoc($readdata)) { echo $row['name']; echo $row['date']; } Die Ordnung ist zwar nach dem Datum korrekt, dennoch fehlen Datensätze. Die Programme sind in der Tabelle ungeordnet, also nicht nach Kategorie. Kann mir hier jemand helfen? Gruß Mazel |
Re: [MySQL] Problem mit LIMIT
Hi,
deine Syntax kenne ich nicht, ich mache das immer direkt mit
Code:
... LIMIT 3
|
Re: [MySQL] Problem mit LIMIT
Hi,
wenn du nur LIMIT 3 verwendest, fängt er beim 1. Datensatz an. LIMIT 6,3 beudeutet das er bei dem 6. Datensatz anfängt zu suchen. Das ist ja auch mein Problem, weil es ja nicht geordnet ist, macht der so komische Sachen. Gruß Mazel |
Re: [MySQL] Problem mit LIMIT
Hallo!
Frage: Hast du das x im LIMIT nur für den Eintrag gesetzt oder steht das 1:1 in deinem Skript so? Da gehört nämlich die PHP-Variable hin, die die Seite angibt (und dann mit 3 multiplizieren). Zitat:
Grüße Faux Im Wort beginend stecken begin und end drinne. :roll: |
Re: [MySQL] Problem mit LIMIT
Hi,
Nein, da steht eine Variable mit 3 multipliziert. Gruß Mazel |
Re: [MySQL] Problem mit LIMIT
Zitat:
Grüße Faux |
Re: [MySQL] Problem mit LIMIT
hi,
hier der Code:
Delphi-Quellcode:
in $_GET['get'][2] ist dann die Seite gespeichert, die angezeigt werden soll. Beispiel:
$limit=$_GET['get'][2];
$readdata=mysql_query("SELECT * FROM downloads WHERE categorie='$get' ORDER BY date DESC LIMIT $limit,3"); while($row = mysql_fetch_assoc($readdata)) { echo $row['name']; echo date("d.m.Y", $row['date']); }
Delphi-Quellcode:
bedeutet, dass die Seite 1 angezeigt werden soll. Die anderen Zahlen nutze ich für etwas anderes.
index.php?get=331
Gruß Mazel |
Re: [MySQL] Problem mit LIMIT
Hallo,
LIMIT mit ORDER funktioniert definitiv:
Code:
Greetz
$page = 3;
$perpage = 5; $sql = 'SELECT * FROM bar ORDER by foo LIMIT '. ($page-1) * $perpage .",{$perpage}"; alcaeus |
Re: [MySQL] Problem mit LIMIT
Zitat:
Du solltest $limit mit 3 multiplizieren, da jede Seite 3 Einträge hat und der erste Parameter sen "Einsprungpunkt" angibt. Zitat:
Grüße Faux |
Re: [MySQL] Problem mit LIMIT
hi,
hab jetzt eine Lösung für mein Problem. Ich speichere erst die geordneten Datensätze in ein Array und gebe sie dann pro Seite aus. Gruß Mazel |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:10 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz