Featured Top
Cos’é standardLib

Si tratta di un framework PHP in grado di gestire con poche righe di codice i principali processi utilizzati nello sviluppo di un'applicazione web.

Questo avviene tramite dei modelli standard sui quali é basato il framework
Cosa sono i modelli

standardLib mette a disposizione delle interfacce per gestire operazioni quali:
  • - Registrazione utenti
  • - Autenticazione
  • - Inivo di email dal sito
  • - Paginazione contenuti
  • - Motori di ricerca
  • - Sicurezza
  • - Upload di file
  • - ...e molto altro

Queste interfacce prendono il nome di modelli
Cosa sono i plugins

Grazie allo sviluppo di plugins è possibile estendere i modelli di standardLib o per crearne dei nuovi.

Le procedure per la creazione di plugin sono esposte nell'apposita sezione.

Pagination

Dipendenze: Nessuna.

Descrizione

Il modello Pagination() provvede alla paginazione dei risultati di una query creando i link “precedente”, “successivo”, “prima pagina”, “ultima pagina” “numero pagina” e “totale pagine”.
Con l’introduzione del modello Loop, l’utilizzo diretto di questo modello ha poco senso.

Lista dei parametri

Parametro Descrizione Default
step Il numero di risultati da mostrare per ogni pagina 10
NextMark Rappresenta ciò che deve visualizzare il link “prossima pagina” >
LastMark Rappresenta ciò che deve visualizzare il link “ultima pagina” >>
FirstMark Rappresenta ciò che deve visualizzare il link “prima pagina” <<
PreviousMark Rappresenta ciò che deve visualizzare il link “pagina precedente” <

Lista dei metodi e delle proprietà

Proprietà – Metodo Descrizione Return
paginationQuery($query) Esegue la query $query e valorizza tutte le seguenti proprietà Risorsa
Next Contiene il link per la prossima pagina
Last Contiene il link per l’ultima pagina
First Contiene il link per la prima pagina
Previous Contiene il link per la pagina precedente
numPage Contiene il numero della pagina che si sta visualizzando
totPage Contiene il numero totale delle pagine

Esempio minimo

Si consideri di avere la tabella “articoli”. Vogliamo visualizzare i titoli degli articoli pagniati 5 alla volta.

include 'standardLib/engine.php';

_setOptions("step" => 5);

In seguito, utilizzando la risorsa che ritorna il metodo paginationQuery() stampiamo i titoli (che saranno già paginati; in questo caso vedremo i primi 5)

$res = $model->paginationQuery("SELECT * FROM articoli");

while ($row = mysql_fetch_array($res))
{
	echo $row['title'] . '<br />';
}

Ed alla fine è possibile inserire i link per navigare tra le pagine

echo "
    "; echo $model->First . $model->Previous . $model->Next . $model->Last; echo "
";

Nota: considerando che questi link sono stampati all’interno dei tag li (con classe pagination), dovremo prevedere un css minimo:

li.pagination{
	display: inline;
}

ul{
	list-style-type: none;
}

Si dispone ancora di due proprietà pubbliche (numPage e totPage) con le quali si può aggiungere qualcosa del genere:

echo 'pagina ' . $model->numPage . ' di ' . $model->totPage;