Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 08-02-2010 17:13:40

zed
Membre
Date d'inscription: 28-01-2010
Messages: 27

[Resolu][zend_form] liste déroulante avec l'attribut 'value'

Bonjour,

je coince sur un petit truc avec la liste déroulante hmm

Dans mon dossier forms ce qui concerne mon select:

$categorie = new Zend_Form_Element_Select('categorie');
$categorie->setLabel('La catégorie associer: ')
    ->setRequired(true);

Dans mon controller:

//ici j'insère les données dans la liste dérulante où pour un libellé il y a un identifiant
$liste = $model->listecategorie();
$dataSelect = array();

foreach ($liste as $option ){
    $dataSelect[] = array($option['id_categorie_forum'] => $option['lib_categorie_forum']);
}

//génération du formulaire
form = new Form_Administration_Ajouterrubrique(array('action' => $this->view->BaseUrl('ajouter-rubrique-forum.html'),'method' => 'post'));

//categorie est le nom que porte ma liste déroulante
$form->categorie->setMultiOptions($dataSelect);
$this->view->formAjouterRubrique = $form;



Voilou tout fonction bien, quand je regarde mon code source HTML, j'ai bien dans <option></option> le value qui correspond au libéllé indiquer.
Mais à chaque balise <option></option> j'ai ceci:

<optgroup label="0">
<option value="3" label="Site web">Site web</option>
</optgroup>
<optgroup label="1">
<option value="5" label="plop">plop</option>
</optgroup>

et ainsi de suite... je comprends pas pourquoi il un <optgroup> qui apparaît, en plus il a un label qui s'incrémente de +1 à chaque enregistrement hmm


Merci de votre aide!
Zed

Dernière modification par zed (08-02-2010 18:24:11)

Hors ligne

 

#2 08-02-2010 18:23:46

zed
Membre
Date d'inscription: 28-01-2010
Messages: 27

Re: [Resolu][zend_form] liste déroulante avec l'attribut 'value'

re!

Bon après pas mal de magouille dans tous les sens j'ai trouvé une solution, je sais si c'est 'propre' mais ça fonctionne smile

voici ma boucle:

foreach ($liste as $option ){
$dataSelect[$option['id_categorie_forum']] =  $option['lib_categorie_forum'];
           
}



++

Hors ligne

 

#3 09-02-2010 14:19:53

loriv
Membre
Date d'inscription: 10-11-2009
Messages: 22

Re: [Resolu][zend_form] liste déroulante avec l'attribut 'value'

A la place de

Code:

foreach ($liste as $option ){
    $dataSelect[] = array($option['id_categorie_forum'] => $option['lib_categorie_forum']);
}

J'aurais utilisé la syntaxe suivante (plus objet):

Code:

foreach ($liste as $option ){
    $dataSelect[$option->id_categorie_forum] = $option->lib_categorie_forum;
}

-----------------------------------------------------------------------------------------------------------

ZF 1.9.6 + WXP + Xampp 1.7.2 (Php5.3.0  Apache2.2.12 PhpMyadmin3.2.0.1)

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