Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Bonjour, j'ai créé un formulaire assez simple, comme ceci :
$questionForm = new Zend_Form_Element_Radio('question[]'); $questionForm->setRequired(true) ->setLabel($question->ennonce) ->setMultiOptions($arr);
Je souhaite donc repéter ce code plusieurs fois, d'où le nom question[].
Mais malheureusement, Zend me supprime mes "[]", et donc j'obtiens le nom "question" en html.
Existe-t-il une solution ?
Merci.
Hors ligne
Ce comportement est normal. Les noms sont filtrés pour être valide.
Les [ ] sont générés par les helpers selon le type des éléments : un bouton radio ne peut contenir qu'une seul valeur.
Hors ligne
Si tu voulais plusieurs valeurs, c'est des checkbox qu'il faut utiliser
Hors ligne
Tu as la méthode setIsArray() sur les classes dérivées de Zend_Form_Element pour qu'il ajoute les crochets dans l'attribut name quand il génère le formulaire HTML. Après, il faut savoir si tu abordes le problème de la bonne manière comme le disent Mr.MoOx et nORKy ^^
J'émettrai une remarque quand même sur le filtre Zend pour l'attribut name ... il va un peu trop loin pour avoir des noms valides en filtrant le caractère - par exemple ...
Hors ligne