Wie Paginierung zu implementieren?
-
06-07-2019 - |
Frage
Was ist der beste Weg, einfach Paginierung zu implementieren? Hier ist der Code im die Elemente aus der Datenbank in eine Tabelle setzen mit:
$sql = "SELECT * FROM table WHERE id='id' ";
$result = mysql_query($sql);
while($row=mysql_fetch_array($result))}
echo($row['id']);
echo($row['name']);
}
Ich wollte nur dies pageinate so würde ich $ _GET [ 'page'] (bla.php? Page = 1), um die Offset bis 10 verwendet, dann (bla.php? Page = 2) es zu setzen, indem 20?
Lösung
einfachste Antwort, fügen Sie LIMIT
auf Ihr SQL.
LIMIT 10,0
ersten 10 Zeilen zeigen würde.
LIMIT 10,10
10 Zeilen zeigen würde, 10 in Reihe zu starten.
Als Seite beachten, wenn diese in Ihren Fragen stellen, müssen Sie es sanieren. Für Benutzer zur Verfügung gestellt Eingabe, die angeblich eine ganze Zahl sein, sicherzustellen, dass es durch leise ist, der der Benutzer Eingabetyp ändern.
$limit = $_GET['limit'];
settype($limit, 'integer');
Andere Tipps
Wenn Sie MySQL verwenden, können Sie die Limit-Klausel verwenden. Beispiel:
SELECT * FROM tbl LIMIT 5,10; # Retrieve rows 6-15
Sie hier: http://dev.mysql.com/doc/refman/5.1/en/select.html