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.

Search

Dipendenze: Security, Pagination

Descrizione

Il modello Search permette di implementare un motore di ricerca su tabelle di un database con un elevato livello di configurazione e con la possibilità di paginare direttamente i risultati.

Lista dei parametri

Parametro Descrizione Default
type Il tipo di ricerca; esistono quattro possibilità:
Si immagini di inserire la stringa: La mia tosaerba con motore a scoppio

  • or: Trova tutti i campi che contengono tosaerba o motore o scoppio (le parole fino a 3 lettere non vengono prese in considerazione)
  • and: Trova tutti i campi che contengono la e mia e tosaerba e con e motore e a e scoppio
  • exactly: Trova tutti i campi che contengono esattamente la frase La mia tosaerba con motore a scoppio
  • fulltext: Esegue una ricerca fulltext della chiave ed ordina i risultati in base alla pertinenza. Può anche restituire un valore in percentuale o in frazione della quantità di termini trovati per ogni record
or
wantToPage Si desiderano i risultati paginati? (0 no; 1 sì) 1
searchTable Nome della tabella sulla quale viene eseguita la ricerca Nessun valore di default
searchField Campo della tabella sul quale viene eseguita la ricerca Nessun valore di default
scoreMod La modalità di visualizzazione della perinenza di una ricerca fulltext (f per frazione; p per percentuale) p

Lista dei metodi e delle proprietà

Proprietà – Metodo Descrizione Return
searchResultSet Questa propietà contiene il resultset della ricerca
Pagination->searchResult() Metodo per l’attivazione della ricerca che valorizza la proprietà searchResultset
CalcScore($score) Ritorna la pertinenza del risultato di una ricerca fulltext in percentuale o in frazione Stringa

Esempio minimo

Innanzitutto dovremo predisporre il form per la ricerca; l’attributo name del campo di ricerca deve essere obbligatoriamente key.

Poniamo ora di voler fare una ricerca fulltext del campo testo della tabella cerca paginado i risultati 5 alla volta

include 'standardLib/engine.php';

_setOptions('searchTable' => 'cerca',
            'searchField' => 'testo',
	        'step' => 5,
	        'type' => 'fulltext',
           'wantToPage' => true);

if(isset($_POST['submit']))
{
   $model->searchResult(); // costruisce la risorsa
}

while($row = mysql_fetch_array($model->searchResultSet))
{
	echo $row['testo'] . ' ' . $model->CalcScore($row['score']) . "

";
}

echo "
    "; echo $model->Previous . ' ' . $model->Next; echo "
";

Notate che CalcScore (che in questo caso ci restituisce la percentuale di pertinenza) prende come parametro il valore score. Il nome di questo valore non può essere modificato.
Per la paginazione ho messo solo i link per la pagina precedente e per la pagina successiva, ma naturalmente vi sono tutte le proprietà disponibili nel modello Pagination.

Per semplificare ulteriormente, è consigliato passare la risorsa restituita, direttamente al metodo query_elements() del modello Loop ed estrarre i risultati con Loop appunto.