Controllare che i dati inviati dagli utenti siano stati correttamente specificati è un'operazione con non dovrebbe mai essere tralasciata. Spesso ci si ritrova purtroppo in situazioni in cui un sito internet non controlla correttamente i dati da noi immessi e non produce i risultati desiderati in caso si commettano degli errori durante l'immissione. PHP ha recentemente aggiunto delle funzionalità per filtrare i dati in ingresso in base a determinati pattern di validazione ma, come per molti altri framework, CakePHP fornisce un sistema integrato di validazione dei dati che risulta molto semplice ed intuitivo. Questo sistema è anche utilizzato internamente dal framework stesso all'interno degli script generati automaticamente per l'implementazione di interfacce CRUD (Create, Read, Update and Delete).
In questo articolo valuteremo cosa offre CakePHP per la validazione dei dati facendo alcuni esempi pratici di uso quotidiano.
CakePHP viene fornito con una serie di validatori di default. Questi validatori sono espressioni regolari che vengono utilizzate per validare i dati di un modello a runtime. I validatori di default a disposizione sono quattro:
Quando definiamo un modello possiamo specificare delle espressioni regolari da utilizzare per la validazione che verranno applicate a runtime. Tra queste espressioni regolari, compatibili con Perl, possiamo anche utilizzare quelle di default:
<?php
class TestModel extends AppModel
{
var $name = 'TestModel';
var $validate = array(
'numer' => VALID_NUMBER,
'required_field' => VALID_NOT_EMPTY,
'email' => VALID_EMAIL,
'custom' => '/[a-n]+/i'
);
}
?>
I validatori sono specificati nella variabile $validate, che è un array associativo che mappa ad ogni proprietà di un modello il suo validatore. Ogni volta si tenterà di accedere in scrittura ad un elemento del modello sarà la classe AppModel stessa che si occuperà di recuperare il validatore e, se presente, di applicarlo al valore assegnato. Se fosse necessario validare manualmente i campi è possibile utilizzare direttamente il metodo validate() del modello.
Guida Yii FrameworkCome creare applicazioni Web in modo semplice e veloce con il... |
Guida Zend FrameworkDiventate professionisti dello sviluppo Web. Zend Framework è lo... |
Guida Applicazioni Facebook con PHPCome realizzare un'applicazione per Facebook. Dalle basi della... |
Ogni lunedì, direttamente nella tua e-mail: script, articoli, guide e tutorial su PHP, MySQL e Apache.
Iscriviti alla newsletter
|
|
Corso PHP per Webmaster11 Giugno 2012 a Milano |
|
|
Corso Google AdWords Base25 Giugno 2012 a Milano |
|
|
Corso Google AdWords Base05 Giugno 2012 a Roma |