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 :

Utilisation de FilteringSelect [ZF 1.7]


Sujet :

Zend_Form PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 77
    Points : 57
    Points
    57
    Par défaut Utilisation de FilteringSelect
    Salut à Tous !
    Je suis entrain de développer une application en utilisant Zend Framework !
    Il se trouve que j'ai un petit soucis au niveau de mon affichage avec Dojo pour un formulaire ! en utilisant le Zend_Dojo_Form_Element_FilteringSelect selon un tutorial je n'arrive pas à afficher mon FilteringSelect :s !! Si quelqu'un peut m'aider
    Voici mon code ainsi que l'apercu de ce que j'ai :
    Bootstrap :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    ....
    $view = new Zend_View();
    $view->setEncoding('UTF-8');
    Zend_Dojo::enableView($view);
    $view->dojo()
    	 ->addStyleSheetModule('dijit.themes.tundra')
    	 ->setDjConfigOption('usePlainJson',true)
    	 ->enable();
    ....
    Controller :
    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
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
     
        //Action d'accueil
        public function indexAction()
        {
            $this->view->title = "Gestpresent - Accueil";
        }
     
    	public function congeAction()
    	{
    		$this->view->title = "Gestpresent - Mes Conges";
     
            $form = $this->getForm();
            if ($this->_request->isPost()) {
     
                if ($form->isValid($_POST)) {
                    // Process data
                    // Pass the name and birthday values to the view so that
                    // You can display them in the view
    				$this->view->congeId = $this->_getParam('congeId');
                    $this->view->datedebut = $this->_getParam('datedebut');
    				$this->view->datefin = $this->_getParam('datefin');
                } else {
                   //If form validation fails populate and display the form again
                   $form->populate($_POST);
     
                   $this->view->form = $form;
     
                }
     
            } else {
               //If the request is not post display the form
               $this->view->form = $form;
     
            } 
     
    	}
    	//Liste des types de Congés
    	public function congelistAction()
    	{
    		$db = Zend_Registry::get("db");
            $result = $db->fetchAll("SELECT id_type_conge, libelle_type_conge FROM type_conge");
            $data = new Zend_Dojo_Data('id_type_conge', $result);
            $this->_helper->autoCompleteDojo($data);
    	}
     
     
    	//Création du Formulaire
        public function getForm() 
        { 
            $form = new Zend_Form;
     
    		$congeId= new Zend_Dojo_Form_Element_FilteringSelect('congeId');
    		$congeId->setLabel("Type de conge")
    				->setAutoComplete(true)
    				->setStoreId("congeStore")
    				->setStoreType("dojo.data.ItemFileReadStore")
    		//		->setAttribs(array("dojoType"=>"dojo.data.ItemFileReadStore"))
    		//		->setAttribs(array("dojoType"=>"dijit.form.FilteringSelect"))
    				->setStoreParams(array("url"=>"/index/congelist"))
    				->setAttrib("searchAttr","libelle_type_conge")
    				->setRequired(true); 
     
     
            $datedebut = new Zend_Dojo_Form_Element_DateTextBox('datedebut');
            $datedebut->setLabel('Du :')
      				  ->setAttribs(array("dojoType"=>"dijit.form.DateTextBox"))
    				  ->setRequired(true);
     
            $datefin = new Zend_Dojo_Form_Element_DateTextBox('datefin');
            $datefin->setLabel('Au :')
      				->setAttribs(array("dojoType"=>"dijit.form.DateTextBox"))	
    				->setRequired(true);
     
            $submit = $form->createElement('submit', 'Valider');
     
            $form->addElements(array($congeId, $datedebut, $datefin, $submit,));
     
            return $form;
        }
     
     
    }
    Layout :
    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
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
     
    ...
    <script type="text/javascript" src="../../dojo-1.2.3/dojo/dojo.js" djConfig="parseOnLoad: true"></script>
    <script type="text/javascript">
    dojo.require("dojo.parser");
    dojo.require("dijit.form.FilteringSelect");
    dojo.require("dijit.form.DateTextBox");
    dojo.require("dojo.data.ItemFileReadStore");
    dojo.require("dojox.data.QueryReadStore");
    dojo.require("dijit.Dialog");
    dojo.require("dijit.form.TextBox");
    dojo.require("dijit.form.TimeTextBox");
    dojo.require("dijit.form.Button");
    dojo.require("dijit.form.DateTextBox");
    </script>
    </head>
     
    <body class="tundra">
     
    <div id="content">
     
       <div id="header">
        <?php  echo $this->render('common/header.phtml');  ?>
       </div>
     
       <div id="page">
        <?php echo $this->layout()->content; ?>
        </div>
     
       <div id="footer">
       <?php  echo $this->partial('common/footer.phtml');  ?>
       </div>
     
    </div>
     
    </body>
    </html>
    ...
    View :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <h1><a href="<?php echo $this->baseUrl(); ?>">ACCUEIL</a> - MES CONGES</h1>
    <br />
    <br />
    <?php 
        echo $this->form ;
    ?>
    Ainsi que le code source de la page généré :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    <form enctype="application/x-www-form-urlencoded" action="" method="post" name=""><dl class="zend_form">
    <dt><label for="congeId" class="required">Type de conge</label></dt>
    <dd>
    <input options="" searchAttr="libelle_type_conge" listsep="&lt;br /&gt;" id="congeId" name="congeId" value="" type="text"></dd>
    <dt><label for="datedebut" class="required">Du :</label></dt>
    <dd>
    <input dojoType="dijit.form.DateTextBox" id="datedebut" name="datedebut" value="" type="text"></dd>
    <dt><label for="datefin" class="required">Au :</label></dt>
    <dd>
    <input dojoType="dijit.form.DateTextBox" id="datefin" name="datefin" value="" type="text"></dd>
    <dt>&nbsp;</dt><dd>
    <input type="submit" name="Valider" id="Valider" value="Valider"></dd></dl></form>
    Images attachées Images attachées  

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

Discussions similaires

  1. utiliser les tag [MFC] [Win32] [.NET] [C++/CLI]
    Par hiko-seijuro dans le forum Visual C++
    Réponses: 8
    Dernier message: 08/06/2005, 15h57
  2. Réponses: 4
    Dernier message: 05/06/2002, 14h35
  3. utilisation du meta type ANY
    Par Anonymous dans le forum CORBA
    Réponses: 1
    Dernier message: 15/04/2002, 12h36
  4. [BCB5] Utilisation des Ressources (.res)
    Par Vince78 dans le forum C++Builder
    Réponses: 2
    Dernier message: 04/04/2002, 16h01
  5. Réponses: 2
    Dernier message: 20/03/2002, 23h01

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