Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 23-12-2009 15:10:34

Mordred
Nouveau membre
Date d'inscription: 07-05-2009
Messages: 3

[Zend_Controller][1.9] Helper d'action redirector() et methode init()

Bonjour. J'ai voulu mettre à jour un peu mon site en passant de 1.8 à 1.9, et à ma grande surprise mes redirections ne fonctionnaient plus.

J'ai réussi à isoler le noeud du problème en tripatouillant le code. Finalement j'ai remarqué que le problème venait de l'initialisation d'un attribut table, recevant une instance d'un modèle, dans la fonction Init()

Code:

class ContactController extends Zend_Controller_Action
{
    /**
     * Table contact
     */
    private $_contactTable;
    
    /**
     * Initialisation des attributs
     */
    public function init()
    {
    $this->_contactTable = new Default_Model_Contact();
    }
    /**
     * Redirection
     */
    public function indexAction()
    {
    try
    {
        $this->_helper->redirector('publish','news');
    }
    catch(Exception $e)
    {
        echo $e->getMessage();
    }
    }
}

Voici l'exception obtenue :

Cannot send headers; headers already sent in /monsite/application/models/Contact.php, line 1

Si j'initialise _contactTable avec un entier par exemple, la redirection fonctionne. Le problème semble venir de la définitions des "headers" qui est effectuée et dans model, et dans redirector.

Avez vous déjà vu ce problème? Je suis très loin de connaître assez les arcanes de ZF pour comprendre cette histoire de headers...

Merci de votre aide!

Dernière modification par Mordred (23-12-2009 15:14:03)

Hors ligne

 

#2 26-12-2009 23:46:55

Grummfy
Membre
Lieu: Belgique
Date d'inscription: 01-08-2007
Messages: 232
Site web

Re: [Zend_Controller][1.9] Helper d'action redirector() et methode init()

hello,
redirector t'affichera des erreur tant que des echo ou autre sortie auront été faites avant ...


Engagez-moi! : Cherche job en Belgique autour de Namur (1 heure de route autour)
blog - ZF Planet

Hors ligne

 

#3 30-12-2009 14:49:57

Mordred
Nouveau membre
Date d'inscription: 07-05-2009
Messages: 3

Re: [Zend_Controller][1.9] Helper d'action redirector() et methode init()

Merci pour l'info, mais je redéfinis la méthode init() pour créer une instance d'un modèle, je ne vois pas où est la sortie.
De plus, si je crée une méthode initialisation() qui contient la même instanciation, et que je l'appelle au début de mon action, ça passe sans problème.
C'est donc bien qu'il y a un comportement propre à init() qui est incompatible avec redirector, et je ne comprends toujours pas pourquoi. D'après l'information que tu me transmets, il s'agit d'une sortie, mais quelle sortie?

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