Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 10-02-2014 11:17:42

romsVLM
Membre
Date d'inscription: 23-01-2014
Messages: 89

Problème de Validator sur un formulaire

Bonjour,

j'ai un formulaire, avec des validtors sur certains champs.

Lorsque je créer la vue de la manière ci dessous, les validators fonctionnent correctement (required : true par exemple) :

Code:

[lang=php]<?php 
echo $this->form()->openTag($form);
foreach ($form->getElements() as $element) {
    echo $this->formRow($element);
}
echo $this->form()->closeTag($form);
?>

Mais lorsque j'écris la vue de cette façon afin de personnaliser mon formulaire, aucuns validators ne fonctionnent, le formulaire se recharge sans afficher les messages d'erreurs :

Code:

[lang=php]<?php 
echo $this->form()->openTag($form);
echo $this->formHidden($form->get('id'));
echo $this->formLabel($form->get('nom'));
echo $this->formText($form->get('nom')).'<br/><br/>';
echo $this->formLabel($form->get('description'));
echo $this->formTextarea($form->get('description')).'<br/><br/>';
echo $this->formLabel($form->get('prix'));
echo $this->formNumber($form->get('prix')).' euros<br/><br/>';
echo $this->formLabel($form->get('categorie'));
echo $this->formSelect($form->get('categorie')).'<br/><br/>';
echo $this->formLabel($form->get('sub_categorie'));
echo $this->formSelect($form->get('sub_categorie')).'<br/><br/>';
echo $this->formSubmit($form->get('submit'));
echo $this->form()->closeTag($form);
?>

Merci

Dernière modification par romsVLM (10-02-2014 11:19:06)

Hors ligne

 

#2 10-02-2014 11:24:14

Orkin
Administrateur
Lieu: Paris
Date d'inscription: 09-12-2011
Messages: 1261

Re: Problème de Validator sur un formulaire

Salut, le helper formRow appelle les helpers que tu utilises pour customiser l'affichage de ton formulaire en fonction du type de l'élément donc c'est pas lié à l'affichage.

Peux-tu nous donner le code de ton formulaire ?

Hors ligne

 

#3 10-02-2014 11:32:47

romsVLM
Membre
Date d'inscription: 23-01-2014
Messages: 89

Re: Problème de Validator sur un formulaire

aliment.form.config

Code:

[lang=php]
<?php
return array(
    //ajout d'un champs caché 'id'
    array(
        'name' => 'id',
        'attributes' => array(
            'type' => 'hidden',
        ),
    ),

    //ajout d'un champs texte 'nom' avec son label
    array(
        'name' => 'nom',
        'attributes' => array(
            'type' => 'text',
        ),
        'options' =>array(
            'label' => 'Nom : '
        )
    ),
    //ajout d'un champs texte 'description' avec son label
    array(
        'name' => 'description',
        'attributes' => array(
            'type' => 'textarea',
        ),
        'options' =>array(
            'label' => 'Description : '
        )
    ),
    //ajout d'un champs select 'sous_categorie' avec son label
    array(
        'name' => 'prix',
        'attributes' => array(
                'type' => 'number',
                'min'  => '0',
                'max'  => '100',
                'step' => '0.5', // default step interval is 1
        ),
        'options' =>array(
            'label' => 'Prix : '
        )
    ),    
    //ajout d'un champs select 'categorie' avec son label
    array(
        'name' => 'categorie',
        'type' => 'Zend\Form\Element\Select',
        'attributes' => array(
            'type' => 'select',
        ),
        'options' =>array(
            'label' => 'Categorie : '
        )
    ),
        
    //ajout d'un champs select 'sous_categorie' avec son label
    array(
        'name' => 'sub_categorie',
        'type' => 'Zend\Form\Element\Select',
        'attributes' => array(
            'type' => 'select',
        ),
        'options' =>array(
            'label' => 'Sous categorie : '
        )
    ),
        
    //ajout d'un bouton de validation
    array(
        'name' => 'submit',
        'attributes' => array(
            'type' => 'submit',
            'value' => 'Valider',
        ),
    ),
);

Hors ligne

 

#4 10-02-2014 11:57:13

Orkin
Administrateur
Lieu: Paris
Date d'inscription: 09-12-2011
Messages: 1261

Re: Problème de Validator sur un formulaire

Aïe ça pique un peu là ... Honnêtement t'as été lire la doc officielle sur les formulaires du ZF2 ? Parce que je vois pas où t'as vu qu'il fallait mettre les formulaires dans les fichiers de config ...
De plus, tu remarqueras qu'à certains moment tu mets l'information "type" dans "attributes" et d'autre directement à la racine du tableau. Dans un cas c'est le type html dans l'autre le type d'élément pour le ZF2.

Ensuite pour afficher les erreurs il faut utiliser formElementErrors dans ta vue. Si elles ne sont pas affichés c'est pas pour ça qu'elles n'existent pas. Ca donne quoi le code de ton contrôleur ?

Donc commences par corriger tout ça avec l'aide de la doc, tu devrais déjà y voir plus clair wink !

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages