Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 13-04-2012 16:47:26

abdel
Membre
Date d'inscription: 12-04-2012
Messages: 28

AIDE!! comment recuperer les valeur d'un zend form element multiselect

bonjour a tous je voudrais savoir qu'elle est la méthode pour récuperer les valeurs SELECTIONé d'un multiselect ,
j'ai essayer getValues , getMultiOptions mais ca fonctionne pas , sachant que je veux recuperer les champs selectioné dans mon insertAction , jai fait $a=$form->getValues('nom_multiselect') mais sa fonctionne pas

quelqu'un pourrai m'aidez svp !!!

Dernière modification par abdel (13-04-2012 18:20:34)

Hors ligne

 

#2 13-04-2012 23:49:15

Bobu
Membre
Date d'inscription: 14-10-2011
Messages: 15

Re: AIDE!! comment recuperer les valeur d'un zend form element multiselect

Salut,

La valeur de $this->_request->getParam('nom_multiselect') est bien cohérente ? Si non, cela vient de la définition de ton form. Utilises-tu Zend_Form pour le générer ?

A+

Hors ligne

 

#3 14-04-2012 13:31:59

abdel
Membre
Date d'inscription: 12-04-2012
Messages: 28

Re: AIDE!! comment recuperer les valeur d'un zend form element multiselect

tout d'abord merci pour ta reponse et pour repondre a ta question , oui j'utilise zend_form , j'ai un multiselect générer de 2 table ville et quartier et je voudrais dans mon controller récuperer les champs quartier séléctionner de ce multiselect

Hors ligne

 

#4 14-04-2012 13:46:38

Bobu
Membre
Date d'inscription: 14-10-2011
Messages: 15

Re: AIDE!! comment recuperer les valeur d'un zend form element multiselect

Re,

Alors, si tu as défini ton multiselect comme ça :

Code:

$test= $this->createElement('multiselect','test');

Tu pourrais le récupérer comme ça :

Code:

$valeurs= $form->getValues();
$valeurs_multi= $values['test'];

Où $valeurs_multi est un tableau (fais un var_dump histoire de voir ce qu'il a dans le ventre wink ).

Si il n'y a rien dedans, essaye :

Code:

$test= $this->createElement('multiselect','test[]');

Mais je ne pense pas que ce soit nécessaire avec Zend de spécifier les [].

A+

Hors ligne

 

#5 14-04-2012 16:31:40

abdel
Membre
Date d'inscription: 12-04-2012
Messages: 28

Re: AIDE!! comment recuperer les valeur d'un zend form element multiselect

ca me récupere pas la valeur , c toujours 0 voila mon code


$ville = new Zend_Form_Element_Multiselect('ville');
        $ville->setLabel('Localisation');
        $city = new City();
        $select = $city->select()->setIntegrityCheck(false)
                ->from('city');
        $quarter = new Quarter();
        $quarter_array = array();
        foreach ($city->fetchAll($select) as $c) {
            $select_quarter = $quarter->select()->setIntegrityCheck(false)
                    ->from('quarter')
                    ->where('quarter.City_cityId =' . (int) $c->cityId);
            foreach ($quarter->fetchAll($select_quarter) as $q) {
                $quarter_array[] = $q->quarterDescription;
            }
            $ville->addMultiOptions(array($c->cityDescription => $quarter_array));
            $quarter_array = array();

et voila comment je recupere le champ

$ville = $form->getValues();
                $ville_multi=$ville['ville'];

notant que je veux enregistrer dans une table ce champ selectionner

$quarterRestaurant->insertRestaurant_has_Quarter(1,(int)$ville_multi);

Dernière modification par abdel (14-04-2012 18:02:59)

Hors ligne

 

#6 14-04-2012 18:53:04

abdel
Membre
Date d'inscription: 12-04-2012
Messages: 28

Re: AIDE!! comment recuperer les valeur d'un zend form element multiselect

j'ai fai un zend_debug::dump($ville_multi) ca me donne les valeurs 0 et 1 et nn pas les valeurs Id des 2 quartier normalement j'aurai du avoir 2 et 3 , je dois recuperer les valeurs id des champs sélectionné existant dans la bd
des suggestions ?? merci d'avance

Dernière modification par abdel (14-04-2012 19:04:07)

Hors ligne

 

#7 14-04-2012 19:12:20

abdel
Membre
Date d'inscription: 12-04-2012
Messages: 28

Re: AIDE!! comment recuperer les valeur d'un zend form element multiselect

je pense c mission impossible 5 de faire sa , je vous donne un exemple de ce que je veux faire pour que vous sachiez exactement ce que je veux faire , je recupere dans un multiselect ville avec ces quartier
exemple =>new york(quand peu pa selectionné )
               brookline
                 quartier2
             =>  paris
                quartier1
quand je selectionne exemple brookline je voudrais recupere la valeur de son id se trouvant dans la table quartier , maintenant je recupere que son id dans le multiselect qui est 0 et nn pas son id dans la table quartier qui est 2
une idee s'il vous plait comment faire pour le recuperer j'en ai vraiment besoin pour avancer dans mon travail , je bloque dessus depuis une semaine et je commence a perdre du temps

Hors ligne

 

#8 15-04-2012 01:38:05

abdel
Membre
Date d'inscription: 12-04-2012
Messages: 28

Re: AIDE!! comment recuperer les valeur d'un zend form element multiselect

le probleme c'est que quand je genere ma multiselect je specifie pas les id des quartier ce qui fait que quand j'inspecte ma multiselect génerer dans le browzer je trouve <option value=0 label =brookline>....
c'est pour cela que je recupere pas les id des quartier
quelqu'un sait comment on peut affecter les id des champs dans un multiselect , j'ai essayer cela mais ca marche pas



$ville = $this->createElement('multiselect','ville');
        $ville->setLabel('Localisation');
        $city = new City();
        $select = $city->select()->setIntegrityCheck(false)
                ->from('city');
        $quarter = new Quarter();
        $quarter_array = array();
        foreach ($city->fetchAll($select) as $c) {
            $select_quarter = $quarter->select()->setIntegrityCheck(false)
                    ->from('quarter')
                    ->where('quarter.City_cityId =' . (int) $c->cityId);
            foreach ($quarter->fetchAll($select_quarter) as $q) {
                $quarter_array[] = $q->quarterDescription;
                $quarterId[]=$q->quarterId;
            }
            $ville->addMultiOptions(array($c->cityDescription =>$quarterId, $quarter_array));
            $quarter_array = array();
            $quarterId=array();
        }

Hors ligne

 

#9 15-04-2012 01:53:49

abdel
Membre
Date d'inscription: 12-04-2012
Messages: 28

Re: AIDE!! comment recuperer les valeur d'un zend form element multiselect

supeeer a force de travailler dessus j'ai resolu mon probleme

Hors ligne

 

#10 17-04-2012 13:50:20

tahaaa
Membre
Date d'inscription: 17-04-2012
Messages: 14

Re: AIDE!! comment recuperer les valeur d'un zend form element multiselect

Bjr abdel ca va j'ai le meme probleme je veux recupere l Id de la ville pour recupere le les quartier affecter a cet ville est ce que tu peux m aidee comme t as resolut ton probeleme merci

Hors ligne

 

#11 17-04-2012 14:44:24

abdel
Membre
Date d'inscription: 12-04-2012
Messages: 28

Re: AIDE!! comment recuperer les valeur d'un zend form element multiselect

regarde lahaut dans mon message 10 tu trouvera la reponse

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