Come implementare l'impaginazione?
-
06-07-2019 - |
Domanda
Qual è il modo migliore per implementare l'impaginazione semplice? Ecco il codice che sto usando per mettere gli elementi dal database in una tabella:
$sql = "SELECT * FROM table WHERE id='id' ";
$result = mysql_query($sql);
while($row=mysql_fetch_array($result))}
echo($row['id']);
echo($row['name']);
}
Volevo solo impaginare questo in modo da usare $ _GET ['page'] (bla.php? page = 1) per impostare l'offset su 10, quindi (bla.php? page = 2) per impostarlo da 20?
Soluzione
Risposta più semplice, aggiungi LIMIT
al tuo SQL.
LIMIT 10,0
mostrerebbe le prime 10 righe.
LIMIT 10,10
mostrerebbe 10 righe, a partire dalla riga 10.
Come nota a margine, quando si inserisce questo nelle query è necessario disinfettarlo. Per l'input fornito dall'utente che dovrebbe essere un numero intero, assicurati che cambi in modo silenzioso il tipo di input dell'utente.
$limit = Risposta più semplice, aggiungi LIMIT
al tuo SQL.
LIMIT 10,0
mostrerebbe le prime 10 righe.
LIMIT 10,10
mostrerebbe 10 righe, a partire dalla riga 10.
Come nota a margine, quando si inserisce questo nelle query è necessario disinfettarlo.
Per l'input fornito dall'utente che dovrebbe essere un numero intero, assicurati che cambi in modo silenzioso il tipo di input dell'utente.
<*>GET['limit'];
settype($limit, 'integer');
Altri suggerimenti
Se stai usando mysql, puoi usare la clausola Limit. Esempio:
SELEZIONA * DA tbl LIMIT 5,10; # Recupera le righe 6-15
trovato qui: http://dev.mysql.com/doc/refman/5.1/en/select.html