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 :

Formulaire envoyé par GET et URL [ZF 1.7]


Sujet :

Zend_Form PHP

  1. #1
    Membre du Club Avatar de kreatik
    Inscrit en
    Juin 2007
    Messages
    94
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 94
    Points : 62
    Points
    62
    Par défaut Formulaire envoyé par GET et URL
    Bonjour

    Je cherche désespérément à avoir une url classique type /param/value plutot que ?param=value avec un formulaire et une methode get.

    si quelqu'un pouvait me mettre sur la bonne voie, faut-il créer une route manuellement ?

    merci !


  2. #2
    Membre expert
    Avatar de Eusebe
    Inscrit en
    Mars 2006
    Messages
    1 992
    Détails du profil
    Informations personnelles :
    Âge : 46

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 992
    Points : 3 344
    Points
    3 344
    Par défaut
    Bonjour,

    Je ne pense pas que ce soit possible (du moins pas simplement ni systématiquement).

    Voir un sujet similaire : http://www.developpez.net/forums/d69...rl-formulaire/

  3. #3
    Membre du Club Avatar de kreatik
    Inscrit en
    Juin 2007
    Messages
    94
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 94
    Points : 62
    Points
    62
    Par défaut
    Par contre si j'accède manuellement avec l'url /param/value ça fonctionne bien.

    La solution serait alors d'envoyer en POST, et de rediriger vers la "bonne" url, dommage


  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    47
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 47
    Points : 54
    Points
    54
    Par défaut
    Voir ici pour un exemple : GET forms with the MVC .

    Il s'agit d'ajouter un plugin au controller frontal qui va détecter la présence de paramètres de type GET (?xxx=yyy&zzz=aaa), qui va réécrire l'url au format Zend par défaut (/xxx/yyy/zzz/aaa), et qui va actionner une redirection vers cette nouvelle url.

    Je l'ai implémenté pour l'application que je suis en train de développer, ça fonctionne plutôt bien

  5. #5
    Membre du Club Avatar de kreatik
    Inscrit en
    Juin 2007
    Messages
    94
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 94
    Points : 62
    Points
    62
    Par défaut
    Super ça fonctionne très bien

    Je me suis pris la tête la dessus pendant une journée car je pensait qu'il y avait forcément un réglage pour ce genre de truc presque classique, pas facile l'apprentissage de ZF et en particulier la POO

    Edit : Thanks !


  6. #6
    Membre du Club Avatar de kreatik
    Inscrit en
    Juin 2007
    Messages
    94
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 94
    Points : 62
    Points
    62
    Par défaut
    Petit problème quand même

    Le formulaire est comme envoyé des le chargement de la page et m'affiche un " Value is required and can't be empty" pour les champs ayant un setRequired(true), le code "responsable" :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
            // if we get here then the search query is in the URL as parameters
            if ($formSearchInLinks->isValid($this->_getAllParams())) {
     
            }
    Ce code est placé dans mon action index, j'ose pas vous le montrer


  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    47
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 47
    Points : 54
    Points
    54
    Par défaut
    ???

    Pour ma part, le plugin intervient au niveau du controlleur frontal, donc avant le controlleur d'action.

    Je n'ai pas rencontré de soucis particulier à ce niveau.

    Dans mon bootstrap
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $frontController->registerPlugin(new My_Controller_Plugin_CleanQuery());
    Le plugin
    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
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
     
    <?php
     
    /**
     * Plugin that cleans up querystrings in GET submissions
     * NB : ce plugin ne fonctionne pas lorsque les valeurs des paramètres contiennent des '/'
     */
    class My_Controller_Plugin_CleanQuery extends Zend_Controller_Plugin_Abstract {
        /**
         * @var boolean
         */
        protected $permanent;
     
     
        /**
         * Takes a flag in the constructor to determine whether the redirects
         * are permanent or just temporary (default);
         *
         * @param boolean $permanent
         */
        public function __construct($permanent=true) {
            $this->permanent=$permanent;
        }
     
     
        /**
         * Cleans the GET and if it's changed does a redirect
         */
        public function routeStartup(Zend_Controller_Request_Abstract $request) {
            // On supprime les paramètres qui n'ont pas de valeur
            if($this->getRequest()->isGet()) {
                $params = $this->getRequest()->getParams();
                if($params) {
                    $new_params = $this->_filterArray($params);
                    if(count($params, COUNT_RECURSIVE)
                            > count($new_params, COUNT_RECURSIVE)) {
    //                    $uri = $this->getRequest()->getRequestUri();
                        $uri = $_SERVER['REQUEST_URI'];
                        $path = substr($uri, 0, strpos($uri, '?') + 1)
                                . http_build_query($new_params);
                        $this->getResponse()->setRedirect($path,
                                $this->permanent?301:302);
                        $this->getResponse()->sendResponse();
                        exit;
                    }
                }
            }
            // Si on a des paramètres qui sont passés par _GET, on réécrit l'url pour passer des paramètres ZF-Style
            if (isset($_GET) && is_array($_GET) && !empty($_GET)) {
                $path = '';
                //array_walk($_GET, array(__CLASS__, 'encodeParam'));
                foreach ($_GET as $key => $value) {
                    if (is_array ($value) ) {
                        foreach ($value as $_value) {
                        $path .= '/' . $key . '/' . $_value;
                        }
                        continue;
                    }
                    if ($key != 'submit')
                        $path .= '/' . $key . '/' . $value;
                }
                $uri = $_SERVER['REQUEST_URI'];
                $path = substr($uri, 0, strpos($uri, '?')) . $path;
                $this->getResponse()->setRedirect($path, $this->_permanent ? 301 : 302);
                $this->getResponse()->sendResponse();
                exit;
            }
        }
     
        /**
         * Cleans out false values from an array
         *
         * @param array $array
         */
        private function _filterArray($array) {
            foreach($array as $key=>$value) {
                if(is_array($value)) {
                    $value = $this->_filterArray($value);
                    $array[$key]=$value;
                }
                if($value==='') {
                    unset($array[$key]);
                }
            }
            return $array;
        }
     
        public static function encodeParam(&$value, &$key) {
            $value = urlencode($value);
            $key = urlencode($key);
        }
    }

  8. #8
    Membre du Club Avatar de kreatik
    Inscrit en
    Juin 2007
    Messages
    94
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 94
    Points : 62
    Points
    62
    Par défaut
    Moi aussi (bootstrap.php) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $frontController->registerPlugin(new Plugin_CleanQuery());
     
    // Dispatch the request using the front controller.
    $frontController->dispatch();
    Mais j'avais mis le code de ma rechercher dans la même action que mon index, j'ai mis la recherche dans une action searchAction avec un target du form vers celle ci et du coup je n'ai plus ce pb.

    Juste pour info, ce serait sympa de répondre et de savoir où je vais (où ne vais pas ) que vaut ce code en général, est-ce que les bonnes pratiques sont respectées ? oui/non pk ?

    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
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    <?php
     
    /**
     * IndexController - The default controller class
     *
     * @author
     * @version
     */
     
    require_once 'Zend/Controller/Action.php';
     
    class IndexController extends Zend_Controller_Action
    {
    	public $formSearchInLinks;
    	public $selectFlux;
    	public $pageFlux;
     
    	public function init(){
    		$this->view->querySearchInLinks = null;
     
    		// form search in links
    		$this->formSearchInLinks = new formSearchLink();
            $this->formSearchInLinks->setAction('/index/search');
            $this->formSearchInLinks->setMethod('GET');
     
            // les flux (links)
            $flux = new Flux();
            $this->selectFlux   = $flux->select();
    	}
     
    	public function setPagination($currentPage){
            // nav de pages en pages
    		$this->pageFlux     = Zend_Paginator::factory($this->selectFlux);
            $this->pageFlux->setPageRange(10);
            $this->pageFlux->setCurrentPageNumber($currentPage);
            $this->pageFlux->setItemCountPerPage(40);
    	}
    	public function send2View(){
            // on envoi les données au template
    		$this->view->formSearchInLinks = $this->formSearchInLinks;
    		$this->view->links = $this->pageFlux;
    	}
        public function indexAction()
        {
    		$this->view->title = 'Liens et Ressources pour PHP';
    		$this->view->headTitle('PHPLinks.fr');
     
            // flux de quelle langue ?
            if($this->_getParam('lang')!=NULL){
            	$this->selectFlux->where('lang like ?',$this->_getParam('lang'));
            }
    		// pagination
    		$this->setPagination($this->_getParam('page', 1));
    		// on balance les données à la vue
         	$this->send2View();
        }
        public function searchAction(){
        	// clean url from form methode=get
            if (isset($_GET) && is_array($_GET) && !empty($_GET)) {
                $path = '';
                array_walk($_GET, array('IndexController', 'encodeParam'));
                foreach ($_GET as $key => $value) {
                    if ($key != 'Ok')
                        $path .= '/' . $key . '/' . $value;
                }
                $uri = $_SERVER['REQUEST_URI'];
                $path = substr($uri, 0, strpos($uri, '?')) . $path;
                $this->getResponse()->setRedirect($path, $this->_permanent ? 301 : 302);
                $this->getResponse()->sendResponse();
                return;
            }
     
            // if we get here then the search query is in the URL as parameters
            if ($this->formSearchInLinks->isValid($this->_getAllParams())) {
            	// filtre la requete sql
            	$this->selectFlux->where('titre like ?','%'.$this->formSearchInLinks->getValue('q').'%');
            	// affiche la recherche dans la case du form
            	$this->formSearchInLinks->__get('q')->setValue($this->formSearchInLinks->getValue('q'));
     
            	$this->view->title = 'Recherche de &quot;'.$this->formSearchInLinks->getValue('q').'&quot;';
    			$this->view->headTitle('Recherche parmis les liens php');
            }
     
    		// pagination
    		$this->setPagination($this->_getParam('page', 1));
    		// on balance les données à la vue
         	$this->send2View();
     
         	//hop on rend avec la vue de l'index
         	$this->render('index');
        }
     
        /*
         * fonction diverses
         */
    	public static function encodeParam(&$value, &$key) {
            $value = urlencode($value);
            $key = urlencode($key);
        }
    }
    ?>
    ps : et pourquoi les fichiers générés via zend studio n'ont pas la balise de fermeture de php ??


  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    47
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 47
    Points : 54
    Points
    54
    Par défaut
    Par contre, je ne met aucun code spécifique dans mes controlleurs d'action, contrairement à toi (cf le début de la méthode searchAction).

    Sinon pour les bonnes pratiques, je ne peux pas trop te dire, je débute avec ZF.

    Pour le tag de fermeture, c'est 'imposé' par les bonnes pratiques de Zend Framework (quand on parle du loup ...). Car si tu mets un espace blanc après le tag de fermeture, tu ne peux plus balancer des headers dans le code qui sera éxécuté après cette page. C'est écrit dans la documentation du framework ICI

  10. #10
    Membre du Club Avatar de kreatik
    Inscrit en
    Juin 2007
    Messages
    94
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 94
    Points : 62
    Points
    62
    Par défaut
    Bien vu pour la doc sur la fermeture du tag php, c'est vrai que ça limite la casse mais je pensais pas qu'on pouvait le faire.

    qu'entends-tu par code spécifique ? si tu parles de ce bout de code où l'a tu mis ? dans une fonction ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
        	// clean url from form methode=get
            if (isset($_GET) && is_array($_GET) && !empty($_GET)) {
                $path = '';
                array_walk($_GET, array('IndexController', 'encodeParam'));
                foreach ($_GET as $key => $value) {
                    if ($key != 'Ok')
                        $path .= '/' . $key . '/' . $value;
                }
                $uri = $_SERVER['REQUEST_URI'];
                $path = substr($uri, 0, strpos($uri, '?')) . $path;
                $this->getResponse()->setRedirect($path, $this->_permanent ? 301 : 302);
                $this->getResponse()->sendResponse();
                return;
            }
    Edit : on pourrait le mettre dans un init() du controller ou je dit une connerie ?


  11. #11
    Membre du Club Avatar de kreatik
    Inscrit en
    Juin 2007
    Messages
    94
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 94
    Points : 62
    Points
    62
    Par défaut
    Autre question svp

    J'ai voulu faire une fonction pour ajouter d'autres paramètres à supprimer en plus de 'submit' comme par exemple si le bouton submit a comme attribut name="Ok"...

    J'ai donc appelé dans mon action :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Plugin_CleanQuery::addBadParam('Ok');
    Mais ça marche pas, parce que le plugin est instancié avant mon action (pas mal ça) ! How-to ?


  12. #12
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    47
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 47
    Points : 54
    Points
    54
    Par défaut
    Regarde la méthode routeStartup de mon plugin, en 2è partie, tu trouveras ce bout de code

    Si tu veux pouvoir ajouter des éléments supplémentaires à supprimer, il faut effectivement que tu le fasses dans la page précédente... Soit via un attribut stocké en session... Soit tu normalises ton code en mettant toujours le(s) même(s) nom(s) à ton(tes) boutons ?

  13. #13
    Membre du Club Avatar de kreatik
    Inscrit en
    Juin 2007
    Messages
    94
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 94
    Points : 62
    Points
    62
    Par défaut
    Salut

    voici lu plugin modifié, je vais voir ce que je peux faire avec les sessions :

    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
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    <?php
    /**
     * Plugin that cleans up querystrings in GET submissions
     * NB : ce plugin ne fonctionne pas lorsque les valeurs des paramètres contiennent des '/'
     */
    class Plugin_CleanQuery extends Zend_Controller_Plugin_Abstract {
        /**
         * @var boolean
         */
        protected $permanent;
     	protected $badVarToClear=array('submit','Ok');
     
        /**
         * Takes a flag in the constructor to determine whether the redirects
         * are permanent or just temporary (default);
         *
         * @param boolean $permanent
         */
        public function __construct($permanent=true) {
            $this->permanent=$permanent;
        }
     
     
        /**
         * Cleans the GET and if it's changed does a redirect
         */
        public function routeStartup(Zend_Controller_Request_Abstract $request) {
            // On supprime les paramètres qui n'ont pas de valeur
            if($this->getRequest()->isGet()) {
                $params = $this->getRequest()->getParams();
                if($params) {
                    $new_params = $this->_filterArray($params);
                    if(count($params, COUNT_RECURSIVE)
                            > count($new_params, COUNT_RECURSIVE)) {
    //                    $uri = $this->getRequest()->getRequestUri();
                        $uri = $_SERVER['REQUEST_URI'];
                        $path = substr($uri, 0, strpos($uri, '?') + 1)
                                . http_build_query($new_params);
                        $this->getResponse()->setRedirect($path,
                                $this->permanent?301:302);
                        $this->getResponse()->sendResponse();
                        exit;
                    }
                }
            }
            // Si on a des paramètres qui sont passés par _GET, on réécrit l'url pour passer des paramètres ZF-Style
            if (isset($_GET) && is_array($_GET) && !empty($_GET)) {
                $path = '';
                //array_walk($_GET, array(__CLASS__, 'encodeParam'));
                foreach ($_GET as $key => $value) {
                    if (is_array ($value) ) {
                        foreach ($value as $_value) {
                        $path .= '/' . $key . '/' . $_value;
                        }
                        continue;
                    }
                    if (!in_array($key,$this->badVarToClear)){
                        $path .= '/' . $key . '/' . $value;
                    }
                }
                $uri = $_SERVER['REQUEST_URI'];
                $path = substr($uri, 0, strpos($uri, '?')) . $path;
                $this->getResponse()->setRedirect($path, $this->_permanent ? 301 : 302);
                $this->getResponse()->sendResponse();
                exit;
            }
        }
     
        /*
         * @param string $param
         * @param array $param
         */
        public function addBadParam($param){
        	if (!is_array($param)){
        		$param = array($param);
        	}
        	foreach ($param as $p){
        		$this->badVarToClear[]=$p;
        	}
        }
     
        /**
         * Cleans out false values from an array
         *
         * @param array $array
         */
        private function _filterArray($array) {
            foreach($array as $key=>$value) {
                if(is_array($value)) {
                    $value = $this->_filterArray($value);
                    $array[$key]=$value;
                }
                if($value==='') {
                    unset($array[$key]);
                }
            }
            return $array;
        }
     
        public static function encodeParam(&$value, &$key) {
            $value = urlencode($value);
            $key = urlencode($key);
        }
    }
    Par contre un $submit = new Zend_Form_Element_Submit('Ok!'); me donne par defaut un attribut NAME="Ok" et meme en fixant avec setName() cela ne fonctionne pas, en gros il est impossible d'avoir un input type=submit avec un name différent de la value


  14. #14
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    47
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 47
    Points : 54
    Points
    54
    Par défaut
    Ce n'est pas plutôt la valeur que tu dois initialiser avec $element->setValue($value) ?

  15. #15
    Membre du Club Avatar de kreatik
    Inscrit en
    Juin 2007
    Messages
    94
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 94
    Points : 62
    Points
    62
    Par défaut
    Ma modif est inutile alors, addBadParam() et _filterArray() font la même chose si je comprend bien?

    Si mais ça ne fonctionne pas, le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    		$submit =  new Zend_Form_Element_Submit('Ok!');
    		$submit->setAttrib('id','submitBtn_formSearchInLinks');
    		$submit->setName('ddd');
    		$submit->setValue('Ok!');
    retourne ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="submit" value="ddd" id="submitBtn_formSearchInLinks" name="ddd"/>
    Edit : j'ai trouvé en fait il faut utiliser setLabel() (voir ici)


  16. #16
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    47
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 47
    Points : 54
    Points
    54
    Par défaut
    Du coup je suis perdu, il te reste une question en suspens ou pas ?

    Pour la méthode _filterArray, elle permet de supprimer les paramètres qui n'ont pas de valeur associée

  17. #17
    Membre du Club Avatar de kreatik
    Inscrit en
    Juin 2007
    Messages
    94
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 94
    Points : 62
    Points
    62
    Par défaut
    Salut

    ok pour _filterArray donc ma fonction sert à quelque chose seulement pas facile à implémenté du coup j'ai mis en dur mon paramètre 'Ok' dan la fonction en attendant de faire mieux (et si c'est possible).

    Sinon j'essaye de regarder le code de Magento mais y'a un paquet de fichiers


  18. #18
    Membre expert
    Avatar de Janitrix
    Inscrit en
    Octobre 2005
    Messages
    3 391
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 3 391
    Points : 3 401
    Points
    3 401
    Par défaut
    Citation Envoyé par kreatik Voir le message

    ok pour _filterArray donc ma fonction sert à quelque chose seulement pas facile à implémenté du coup j'ai mis en dur mon paramètre 'Ok' dan la fonction en attendant de faire mieux (et si c'est possible).
    Pourrais-tu poser clairement à nouveau ton problème, parce que je comprends plus vraiment où est le problème exactement Merci

    Sinon j'essaye de regarder le code de Magento mais y'a un paquet de fichiers
    Attention Magento n'utilise pas l'application MVC du Zend Framework.

    Bon courage.

  19. #19
    Membre du Club Avatar de kreatik
    Inscrit en
    Juin 2007
    Messages
    94
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 94
    Points : 62
    Points
    62
    Par défaut
    C'est juste qu'au départ j'essayait d'attribuer une valeur a un bouton sans utiliser seLabel() mais setValue() ça c'est reglé

    Par contre j'aurai bien voulu mettre en place (via les sessions ?) ma fonction addBadParam() qui permet de supprimer de l'url d'un formulaire GET des paramètres donnés. C'est surtout pour apprendre tout ça. Voila la question acutelle

    Sinon pour Magento, sais-tu pourquoi ils n'ont pas opté pour le MVC du ZF ?


  20. #20
    Membre expert
    Avatar de Janitrix
    Inscrit en
    Octobre 2005
    Messages
    3 391
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 3 391
    Points : 3 401
    Points
    3 401
    Par défaut
    Et tu veux réaliser cette opération avant l'exécution du contrôleur ou après ?

    Concernant Magento, je n'en sais pas plus que ça, probablement que ça n'entrait pas dans leur besoin ou que ça compliquait l'abstraction (car il faut se rappeler que c'est une application qui doit pouvoir être utilisée sur différents environnements et différentes configurations).

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. piece jointe dans un formulaire envoyé par mail
    Par marie2006 dans le forum InfoPath
    Réponses: 1
    Dernier message: 26/11/2008, 16h39
  2. Formulaire à envoyer par e-mail
    Par neuneu1 dans le forum Langage
    Réponses: 13
    Dernier message: 24/11/2008, 09h26
  3. Réponses: 13
    Dernier message: 06/06/2007, 10h09
  4. Recuperer variable envoyer par get
    Par stephane92400 dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 13/03/2007, 13h43
  5. Réponses: 15
    Dernier message: 13/03/2006, 16h24

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