Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 23-07-2009 13:00:24

Melunais
Nouveau membre
Lieu: Melun
Date d'inscription: 24-11-2008
Messages: 4

[1.8.3]Problème avec l'ErrorController

Bonjour!

Je suis passé récemment à Zend 1.8.x (un peu en retard yep) et je m'attendais à avoir des difficultés mais pas de ce genre : l'ErrorController ne m'affiche pas mes erreurs. Je fais un projet test que j'ai créé avec le Zend Tool ( j'ai suivi le tuto mis à jour de Rob Allen) et là j'étais en train de tester à nouveau Zend Auth sauf que quand j'essaye de me connecter bahh ça m'envoie sur la page d'erreur :

"Exception information:

Message:

Stack trace:

Request Parameters:

array(6) {
  ["controller"]=>
  string(9) "connexion"
  ["action"]=>
  string(5) "index"
..........etc
"

Donc voilà, ce n'est pas pour résoudre l'erreur que je poste, je pourrais me débrouiller pour ça ^^ Mais simplement qu'on m'aide à afficher l'erreur :'( ( ça marche pour les versions antérieurs )

Merci d'avance. J'ai posté dans cette partie du forum parce que j'imagine que c'est par rapport à l'installation/configuration...(?)

Dernière modification par Melunais (23-07-2009 13:02:19)

Hors ligne

 

#2 23-07-2009 20:33:10

ubini
Membre
Lieu: gillarens/Suisse
Date d'inscription: 23-01-2008
Messages: 110
Site web

Re: [1.8.3]Problème avec l'ErrorController

salut,

Voici un controlleur d'erreur qui fonctionne (du moins chez moi) :

Code:

class ErrorController extends My_Controller
{

    public function errorAction()
    {
        $errors = $this->_getParam('error_handler');
        
        switch ($errors->type) { 
            case Zend_Controller_Plugin_ErrorHandler::EXCEPTION_NO_CONTROLLER:
            case Zend_Controller_Plugin_ErrorHandler::EXCEPTION_NO_ACTION:
        
                // 404 error -- controller or action not found
                $this->getResponse()->setHttpResponseCode(404);
                $this->view->message = 'Page not found';
                break;
            default:
                // application error 
                $this->getResponse()->setHttpResponseCode(500);
                $this->view->message = 'Application error';
                break;
        }
        
        $this->view->exception = $errors->exception;
        $this->view->request   = $errors->request;
        
        $dump_message = $this->view->exception->getMessage()
                    . "\n"
                    . $this->view->exception->getTraceAsString();
        $log = new Zend_Log(new Zend_Log_Writer_Stream(
                          APPLICATION_PATH . '/../var/logs/Exception.'.ucfirst(APPLICATION_ENV).'.log')
                                );
        $log->debug($dump_message);
    }
}

Et la vue qui va avec :

Code:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"; "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head>  
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
  <title>Zend Framework Default Application</title> 
</head> 
<body>
  <h2><?php echo $this->message ?></h2> 

  <h3><?php echo ucfirst(get_class($this->exception)) ?> information:</h3> 
  <p> 
      <b>Message:</b> <?= $this->exception->getMessage() ?> 
  </p>

  <? if ('development' === APPLICATION_ENV): ?> 
  <h3>Stack trace:</h3> 
  <pre><?= $this->exception->getTraceAsString() ?> 
  </pre> 

  <h3>Request Parameters:</h3> 
  <pre><? var_dump($this->request->getParams()) ?> 
  </pre> 
  <? endif ?>
  
</body> 
</html>

C'est bien sûr à adapter selon tes besoins mais cela peut t'aider.

++

Dernière modification par ubini (23-07-2009 20:36:07)


http://www.easyswap.org - site d'échange de biens et de services conçu avec jQuery et Zend Framework
http://www.lambelet.net - mon blog perso et inutile

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