Tips and Tricks

Home | Tips and Tricks | Art. # 88

Paginazione a colonne in PHP

Corso online MySQL
Corso online per imparare ad utilizzare il potente database MySQL. Assistenza del docente ed attestato di partecipazione finale.

Molti report da stampare a video sulle pagine Web richiedono, ai fini della logica e della visibilità del report stesso, di essere incolonnati piuttosto che essere stampati video in maniera sequenziale, uno sotto l'altro.

Un esempio di report che può essere stampato a video in questo modo può essere l'elenco delle città di una nazione, oppure le categorie di una directory o cose del genere.

Sfruttiamo allo scopo il sistema della paginazione a colonne che, attraverso PHP, può essere implementata su una qualsiasi matrice di dati, ovvero un database, un file XML o un semplice array, come nell'esempio che affrontiamo in questo articolo.

Creiamo il file paginazione-a-colonne.php e corrediamolo del seguente codice:

<?
    $lettere = array("A", "B", "C", "D", "E", "F", "G", "H", "I", "L");
    $conta = 0;
?>
<table border="1"><tr>
<?
    for ($i=0; $i<count($lettere); $i++)
    {
        if ($conta == 2)
        {
?>
</tr><tr>
<?
            $conta = 0;
        }
?>
<td><?echo $lettere[$i];?></td>
<?
        $conta++;
    }
?>
</tr></table>

Spieghiamo le sue funzionalità.

Per prima cosa creiamo la matrice di dati ed impostiamo a "zero" il valore di una variabile che fa da contatore.

Creiamo quindi la struttura HTML che ospiterà il report e, con un ciclo (impostando il "table row" prima del ciclo stesso), mostriamo tutti i dati e li stampiamo a video ma, all'interno del ciclo, impostiamo una condizione in base alla quale se il contatore assume il numero di colonne che vogliamo impostare, chiude il "table row" e ne apre uno nuovo.

L'esempio in questione, infatti, crea una paginazione a colonne strutturata in due colonne; volendola impostare, ad esempio, a tre colonne, modificheremo cosi la condizione:

        if ($conta == 3)
        {
?>
</tr><tr>
<?
            $conta = 0;
        }

Alla fine del ciclo, prima di chiuderlo, incrementiamo il valore della variabile che fa da contatore.

 

Scritto in data 05/05/2008

Segnalalo ad un Amico | Aggiungilo ai Preferiti


© 2008 Appunti PHP - A cura di Luca Ruggiero - Partita IVA 05564851219 - Pubblicità | Contatti