12
2011
Initiation aux ViewScripts de Zend_Form
Pour la reprise des tutoriels, nous allons voir comment créer un formulaire d’authentification via le système de ViewScripts.
Les ViewScripts, c’est quoi? Et bien, c’est une vue dédiée au formulaire, c’est elle qui va permettre de faire la partie design de votre formulaire sans devoir passer par les décorateurs.
Nous allons donc reprendre le formulaire d’identification de notre turoriel afin de lui faire utiliser les viewScripts :
Pour se faire, reprenez la classe du formulaire suivante (la complète du tutoriel sur l’identification) :
| PHP | | copy code | | ? |
| 01 | class Admin_Forms_Identification extends Zend_Form |
| 02 | { |
| 03 | public function init() |
| 04 | { |
| 05 | $this->setMethod('post') |
| 06 | ->setName('identification'); |
| 07 | |
| 08 | |
| 09 | $login = new Zend_Form_Element_Text('login'); |
| 10 | $login<!--DVFMTSC-->->setRequired(TRUE) |
| 11 | ->addFilters(array('StringTrim', 'StripTags')) |
| 12 | ->addValidators(array( array('validator' => 'StringLength', 'options' => array(0, 20)))) |
| 13 | ->getDecorator('label')->setOption('tag', null); |
| 14 | |
| 15 | $passwd = new Zend_Form_Element_Password('password'); |
| 16 | $passwd−>setRequired(TRUE) |
| 17 | ->addFilters(array('StringTrim', 'StripTags')) |
| 18 | ->addValidators(array( array('validator' => 'StringLength', 'options' => array(0, 20)))) |
| 19 | ->getDecorator('label')->setOption('tag', null); |
| 20 | |
| 21 | $submit = new Zend_Form_Element_Submit('submit'); |
| 22 | $submit->setIgnore(true); |
| 23 | |
| 24 | $this->addElement($login); |
| 25 | $this->addElement($passwd); |
| 26 | $this->addElement($submit); |
| 27 | |
| 28 | $this->setDecorators(array( |
| 29 | array('ViewScript', array('viewScript' => 'index/forms/identification.phtml')) |
| 30 | )); |
| 31 | } |
| 32 | } |
Ici, la ligne qui nous intéresse est la suivante :
| PHP | | copy code | | ? |
| 1 | $this->setDecorators(array( |
| 2 | array('ViewScript', array('viewScript' => 'index/forms/identification.phtml')) |
| 3 | )); |
On indique qu’on met un décorateur global à notre formulaire et il se situe dans /application/modules/admin/views/index/forms/. Le décorater en question contient la vue propre à notre formulaire :
| HTML | | copy code | | ? |
| 01 | <form action="<?php echo $this->escape($this->element->getAction()); ?>" |
| 02 | method="<?php echo $this->escape($this->element->getMethod()); ?>" |
| 03 | class="formident"> |
| 04 | |
| 05 | <p> |
| 06 | Vous devez vous identifier pour accéder au backoffice. |
| 07 | </p> |
| 08 | |
| 09 | <div> |
| 10 | <span class="labelform"><label>Login</label></span> |
| 11 | <span><?php echo $this->element->login->renderViewHelper(); ?></span> |
| 12 | </div> |
| 13 | <div> |
| 14 | <span class="labelform"><label>Mot de Passe :</label></span> |
| 15 | <span><?php echo $this->element->password->renderViewHelper(); ?></span> |
| 16 | </div> |
| 17 | |
| 18 | <?php echo $this->element->submit->renderViewHelper(); ?> |
| 19 | |
| 20 | </form> |
Comme vous le voyez, on habille notre formulaire comme l’on veut. Afin d’appeler l’élément que l’on souhaite sans utiliser les décorateurs par défaut, nous utilisons la fonction renderViewHelper()
Maintenant, il ne vous reste plus qu’à utiliser un peu de CSS et vous pouvez obtenir le formulaire dont vous rêvez.
Articles Connexes
Laisser un commentaire
Catégories
- Actualités (11)
- Android (5)
- Bases de Données (4)
- Développement (1)
- PasteQR (2)
- PHP (8)
- Systèmes et Réseau (5)
- Technologies Web (5)
- Tests (2)
- Zend Framework (30)
Commentaires récents
- (@Fritte7) (@Fritte7) dans PasteQR passe en 1.1.0
- roux dans ZendX Jquery Dialog
- Fritte7 dans Gérer des évènements dans une listview.
- Fierfeu dans Introduction à Zend Framework 2.0
- Christophe B. dans Gérer des évènements dans une listview.
Mots-Clefs
Active Directory AJAX Android Apache2 APC Bootstrap Chrome Configuration CSS Eclipse Firefox Google html HTTP Installation Internet Internet Exporer Java Javascript JQuery JQuery UI Linux Mémoire Mac MySQL Navigateur Opera PDO Pear Phing PHP Safari SGBD SMTP SQL Ubuntu View Helper Windows Server XML Zend Cache Zend DB Zend Form Zend Framework ZendX ZF 2.0
WP Cumulus Flash tag cloud by Roy Tanck requires Flash Player 9 or better.

Publié par Throrïn




