Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Bonjour,
je travail avec Zend 1.9.
J'ai mis en place un plugin qui enregistre la dernière page vue ($this->getRequest()->getRequestUri()) pour le stocker dans la session.
Cependant, le mecanisme enregistre aussi l'appel des fonction javascript.
Exemple, si je place dans le layout:
<script type="text/javascript" src="js/functions.js"></script>
Et bien mon plugin enregistre /zend/public/js/functions.js.
Es ce que cela est normal?
Voici un detail du plugin "session" copier sur zfbook
<?php
/**
* Plugin mémorisant la dernière page vue
*
* @package zfbook
* @subpackage controller
*/
class My_Controller_Plugin_Session extends Zend_Controller_Plugin_Abstract
{
/**
* Session récupérée du registre
*
* @var Zend_Session_Namespace
*/
private $_session;
/**
* En-têtes du navigateur
*
* @var string
*/
private $_clientHeaders;
/**
* Constructeur
*/
public function __construct()
{
$this->_session = Zend_Registry::get('session');
$this->_clientHeaders = $_SERVER['HTTP_USER_AGENT'];
if (array_key_exists('HTTP_ACCEPT', $_SERVER))
$this->_clientHeaders .= $_SERVER['HTTP_ACCEPT'];
$this->_clientHeaders = md5($this->_clientHeaders);
}
/**
* Hook à l'entrée dans la boucle de dispatching
* Vérifie si il n'y a pas eu tentative de vol de la session
* en comparant les en-têtes du navigateur
*
* @param $request Zend_Controller_Request_Abstract
*/
public function dispatchLoopStartup(Zend_Controller_Request_Abstract $request)
{
if(Zend_Auth::getInstance()->hasIdentity()) {
if ($this->_session->clientBrowser != $this->_clientHeaders) {
Zend_Session::destroy();
$this->_response->setHttpResponseCode(403);
$this->_response->clearBody();
$this->_response->sendResponse();
exit;
}
}
}
/**
* Hook à la sortie de la boucle de dispatching.
*
* Mémorise l'Uri actuelle en vue de la réutiliser pour redirection
* sur la page précédente.
*
* @return void
*/
public function dispatchLoopShutdown()
{
$l = Zend_Registry::get('logger');
$l->log($this->getRequest()->getRequestUri(),Zend_Log::INFO);
$this->_session->requestUri = $this->getRequest()->getRequestUri();
$this->_session->clientBrowser = $this->_clientHeaders;
}
}Tres bonne journée
Dernière modification par Mr.MoOx (27-10-2009 09:24:26)
Hors ligne
Ok C'etait un problème de .htaccess
Avec cette ligne ça marche
RewriteRule !\.(js|ico|gif|jpg|png|css)$ index.php
Desolé
Hors ligne
Pages: 1