lunedì 21 gennaio 2008

Accetta le condizioni!

Quando si esegue la verifica dei campi delle form utilizzando Zend Framework a volte ci si scontra con dei piccoli noiosi problemi. Ad esempio nella verifica dei checkbox.

Supponiamo che in una form occorra necessariamente accettare le condizioni cliccando su una checkbox. Se utilizziamo Zend_Filter_Input per la verifica dell'inserimento,
e si utilizzano i seguenti parametri, sembra che la cosa possa funzionare:


$validators = array(
'checkbox' => 'NotEmpty'
);


ma c'è un problema: se la checkbox non è selezionata, non viene inserita nel POST e quindi non arriva proprio alla fase di validazione.

La soluzione è quindi quella di richiedere che la checkbox sia presente e non vuota.


$validators = array(
'checkbox' => array(
'presence' => 'required',
'NotEmpty'
)
);


Adesso se non si accettano le condizioni la form non viene validata, correttamente.

Il fatto poi che il messaggio di errore non sia proprio consono è un altro paio di maniche !

Nessun commento: