IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Zend_Form PHP Discussion :

Remplir un combobox (Zend_Form_Element_Select) [ZF 1.7]


Sujet :

Zend_Form PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de reeda
    Formateur en informatique
    Inscrit en
    Août 2006
    Messages
    367
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Août 2006
    Messages : 367
    Par défaut Remplir un combobox (Zend_Form_Element_Select)
    Bonjour,

    j'ai un combobox que j'ai déclaré dans une classe pour mon formulaire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    <?php
    class FormulaireVille extends Zend_Form
    {
    	public function __construct($options = null, $array)
    	{
    		parent::__construct($options);
    		$this->setName('ville');
    		$id = new Zend_Form_Element_Hidden('id');
    		$nom = new Zend_Form_Element_Text('nom_ville');
    		$nom->setLabel('Nom de la ville : ')
    		->setRequired(true)
    		->addFilter('StripTags')
    		->addFilter('StringTrim')
    		->addValidator('NotEmpty');
     
    		$region=new Zend_Form_Element_Select('regions');
    		$region->setLabel('Région : ')
    		->setValue($array);
     
    		$check=new Zend_Form_Element_Checkbox('encore');
    		$check->setLabel('Ajouter une autre ?');
     
    		$submit = new Zend_Form_Element_Submit('submit');
    		$submit->setAttrib('id', 'submitbutton');
    		$this->addElements(array($id, $nom, $check, $region, $submit));
    	}
    }
    je voudrais savoir comment remplir le combobox à partir de mon controleur, sachant que je récupère les données à partir de la BD,

    Merci d'avance

    Bien cordialement

  2. #2
    Membre Expert

    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 278
    Par défaut
    Regarde la doc : http://framework.zend.com/manual/fr/...lements.values
    Rapidement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $form->getElement('elementName')->setValue($value);

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 98
    Par défaut
    Bonjour reeda,

    Je ne comprends une chose dans ton code, tu utilises un Zend_Form_Element_Select et on a l'impression que tu cherches à remplir les options avec setVlaue() :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $region=new Zend_Form_Element_Select('regions');
    $region->setLabel('Région : ')
    ->setValue($array);
    La méthode à utiliser pour remplir les options d'un select c'est setMultiOptions() :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $region=new Zend_Form_Element_Select('regions');
    $region->setLabel('Région : ')
    ->setMultiOptions($array);
    Dis moi si j'ai raté un épisode

  4. #4
    Membre éclairé Avatar de reeda
    Formateur en informatique
    Inscrit en
    Août 2006
    Messages
    367
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Août 2006
    Messages : 367
    Par défaut
    Bonjour,

    Merci pour vos réponse oliviercuyp et vg33,

    en effet je veux remplir plusieurs données en même temps, mais je rencontre un autre petit problème avec ça

    je veux que chaque option ait une valeur différente des ce qui est affiché,
    en HTML on pouvant faire un truc du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <select>
       <option value="1">Un</option>
       <option value="2">Deux</option>
       <option value="3">Trois</option>
       <option value="4">Quatre</option>
       ...
    </select>
    en clair, je voudrais remplir le combobox avec des champs qui correspondent à des noms de villes et leurs les valeurs seront les identificateurs dans la table correspondante (le table Ville), comme ça j'eviterai l'appel d'une requete pour avoir l'id dans la BD.

    Comment peut on réaliser un truc de ce genre avec Zend ?

    Merci d'avance
    Bien cordialement

  5. #5
    Membre éclairé Avatar de reeda
    Formateur en informatique
    Inscrit en
    Août 2006
    Messages
    367
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Août 2006
    Messages : 367
    Par défaut
    Bonjour,

    j'ai trouvé la solution,
    il suffisait d'envoyer un tableau associatif au lieu d'un simple tableau et le tour est joué,

    merci vg33 et merci encore une fois oliviercuyp garce au code que tu m'as donné j'ai pu deviner ce que je pourrai faire pour résoudre mon problème,

    Bien cordialement

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 98
    Par défaut
    Avec plaisir

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [C#] Remplire un comboBox avec un fichier XML
    Par Roach dans le forum Windows Forms
    Réponses: 3
    Dernier message: 03/09/2005, 20h45
  2. Comment remplir un ComboBox avec le nom des feuilles Excel ?
    Par libracom dans le forum API, COM et SDKs
    Réponses: 2
    Dernier message: 27/06/2005, 15h14
  3. [C#] Remplir une combobox avec le champs d'une table Access
    Par Damsou dans le forum Windows Forms
    Réponses: 4
    Dernier message: 23/06/2005, 15h31
  4. [VB.NET] Remplir une ComboBox avec une requete sql
    Par graphicsxp dans le forum Windows Forms
    Réponses: 6
    Dernier message: 22/03/2005, 15h29
  5. Réponses: 2
    Dernier message: 26/07/2004, 13h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo