Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
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
salut,
Voici un controlleur d'erreur qui fonctionne (du moins chez moi) :
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 :
<!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)
Hors ligne
Pages: 1