[supersaibal]
Originariamente inviato da lucisetti
Buonasera a tutti,
sarebbe possibile creare una "SELECT" che estragga da MySQL ad esempio i primi 10 record, oppure i secondi 10 records oppure ancora i quarti 10 records e cosi via ?
Quindi sempre a salti da 10
ma con la possibilità di scegliere.
Grazie
Lucia [/supersaibal]
Per "possibilità di scegliere" intendi un form con dei campi di testo, oppure delle select box, attraverso cui inserire i valori per poi visualizzare i record dinamicamente?
Se è questo quello che intendi, allora potresti fare una sola query SELECT modificando dinamicamente i valori del LIMIT attraverso l'uso di un paio di select box. Nel codice che segue ho omesso i dati relativi alla tua connessione al database. In pratica è qualcosa del genere:
codice:
/*
queste due variabili $in e $out indicheranno i valori del LIMIT.
Ad esempio, all'apertura della pagina avranno come valore
rispettivamente "0" e "10", quindi nella query SELECT
avrai alla fine LIMIT 0,10 come impostazione di default.
*/
$in = empty($_GET['in']) ? "0" : $_GET['in'];
$out = empty($_GET['out']) ? 10 : $_GET['out'];
/*
questa è la query, l'unica, attraverso cui visualizzerai i record
con intervalli tipo 0,10 - 10,10 - 10,20 - 20,20 ecc...
*/
$result = mysql_query("SELECT tuo_campo FROM tua_tabella
ORDER BY tuo_campo DESC
LIMIT $in,$out", $db);
echo "ID da: $in a $out";
?>
<form method="get" action="<?=$_SERVER['PHP_SELF']?>">
mostra ID da <select name="in">
<option value="0">0</option>
<option value="10">10</option>
<option value="20">20</option>
</select>
a <select name="out">
<option value="10">10</option>
<option value="20">20</option>
<option value="30">30</option>
</select>
<input type="button" value="invio"
onClick="this.form.submit()" class="submit">
</form>
<?php
//qui estrai i dati...
while($record = mysql_fetch_array($result)) {
echo $record['tuo_campo'];
}
?>
dovrebbe essere semplice, se ho inteso bene quello che desideravi ottenere...