Programmando con Zend Framework, uno dei migliori modi per costruire una form sicura, prestante e senta troppi impicci è l’uso del componente Zend_Form. In poche righe di codice saremo in grado di chiedere a Zend di scrivere per noi il codice HTML, controllare l’input passato con il metodo definito e dare una risposta adeguata in caso di buon fine o meno della compilazione utente.
La validazione di un checkbox solitamente passa per il semplice controllo fra elemento flaggato o meno. In caso di submit di un elemento checkbox non flaggato, zend passa la variabile con valore 0 (zero). Tale impostazione permette all’elemento di far passare senza troppi problemi i controlli setRequired(true) e addValidator(‘NotEmpty’). Tali controlli vanno però inseriti al fine di rendere sicura la nostra form. Ma per controllare se effettivamente il checkbox è stato flaggato, basta controllare che il valore passato sia maggiore di zero.
$tos = new Zend_Form_Element_Checkbox(‘MyCheckbox’);
$tos->setRequired(true)
->setLabel(‘Aggrement’)
->addValidator(‘GreaterThan’, false, array(0))
->addValidator(‘NotEmpty’);