2009-11-18 5 views
0

le code symfony que j'utilise,Pour créer une case à cocher dans symfony en utilisant des widgets et aussi le valider?

$this->setWidgets(array(
    'mobile'      =>new sfWidgetFormInput(), 
    'subscribetosms'    =>new sfWidgetFormInputCheckbox(), 
)); 

je veux valider la case à cocher et le code aussi prendre des valeurs de case à cocher

+0

S'il vous plaît au moins faire une tentative de lire le livre Symfony avant de poser des questions. C'est une question extrêmement basique concernant les formulaires de symfony. En outre, apprenez comment formater vos messages sur SO. –

+0

Je suis désolé, et merci pour votre commentaire, je le ferai. –

Répondre

4

pour valider les champs de formulaire dans symfony u besoin de définir validateurs comme ceci (en supposant que vous êtes dans une classe de formulaire):

$this->setValidators(array(
     'mobile'   => new sfValidatorString(array(...)), 
     'subscribetosms' => new sfValidatorInteger(array(...)) 
    )); 

La question est, que voulez-vous valider? Si vous voulez une sorte de valeur envoyer à votre script PHP si la case à cocher est sélectionnée, vous devez définir cette valeur dans le widget.

new sfWidgetFormInputCheckbox(array('value_attribute_value'=>'your_value') 

Maintenant, vous pouvez configurer votre validateur pour valider cette valeur (sfValidatorString pour une chaîne, de sfValidatorInteger pour un entier).

Pour obtenir la valeur de votre action après la validation:

if ($this->form->isValid()) { 
    $myValue = $this->form->getValue('subscribetosms'); 
} 
Questions connexes