Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 13-01-2009 16:58:35

phbord
Nouveau membre
Date d'inscription: 13-01-2009
Messages: 6

[Résolu] problème d'affichage avec la méthode getBaseUrl()

bonjour,

j'utilise la méthode getBaseUrl() pour connaître la partie de l'URI que nous ne connaissons pas.
et voici l'affichage sur le navigateur :
Fatal error: Uncaught exception 'Zend_Loader_PluginLoader_Exception' with message 'Plugin by name 'BaseUrl' was not found in the registry; used paths: Zend_View_Helper_: Zend/View/Helper/:./application/views/helpers/' in /Applications/MAMP/htdocs/phbook/library/Zend/Loader/PluginLoader.php:386 Stack trace: #0 /Applications/MAMP/htdocs/phbook/library/Zend/View/Abstract.php(1067): Zend_Loader_PluginLoader->load('BaseUrl') #1 /Applications/MAMP/htdocs/phbook/library/Zend/View/Abstract.php(545): Zend_View_Abstract->_getPlugin('helper', 'baseUrl') #2 /Applications/MAMP/htdocs/phbook/library/Zend/View/Abstract.php(312): Zend_View_Abstract->getHelper('baseUrl') #3 [internal function]: Zend_View_Abstract->__call('baseUrl', Array) #4 /Applications/MAMP/htdocs/phbook/application/layouts/layout.phtml(8): Zend_View->baseUrl() #5 /Applications/MAMP/htdocs/phbook/library/Zend/View.php(107): include('/Applications/M...') #6 /Applications/MAMP/htdocs/phbook/library/Zend/View/Abstract.php(787): Zend_View->_run('./application/l...') #7 /Ap in /Applications/MAMP/htdocs/phbook/library/Zend/Loader/PluginLoader.php on line 386


et voici le CODE...

local/application/views/helpers/BaseUrl.phtml :
<?php
class Zend_View_Helper_BaseUrl {
    function baseUrl() {
        $fc = Zend_Controller_Front::getInstance();
        // Récupération d'une instance du front controller 
        return $fc->getBaseUrl();
    }
}
?>



local/application/layouts/layout.phtml :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
    <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
    <title><?php echo $this->escape($this->title); ?></title>
    <link rel="stylesheet" type="text/css" media="screen"
             href="<?php //echo $this->baseUrl();?>./public/css/site.css" />
</head>
<body>
<div id="content">
    <h1>layout.phtml : <?php echo $this->escape($this->title); ?></h1>
    début : <?php echo $this->layout()->content; ?> et fin
</div>
</body>



local/public/css/site.css :
@CHARSET "UTF-8";
body,html {
     font-size:100%;
     margin: 0;
     font-family: Verdana,Arial,Helvetica,sans-serif;
     color: #000;
     background-color: #fff;
}
h1 { ...



pourriez-vous m'aider à régler ce problème ? merci.

Dernière modification par Vincent (28-07-2009 17:08:58)

Hors ligne

 

#2 13-01-2009 17:30:54

mikaelkael
Administrateur
Lieu: Donges
Date d'inscription: 18-06-2007
Messages: 1176
Site web

Re: [Résolu] problème d'affichage avec la méthode getBaseUrl()

Hello,

Renommes "local/application/views/helpers/BaseUrl.phtml" en "local/application/views/helpers/BaseUrl.php" et remplaces le code par :

Code:

<?php
class Mes_View_Helper_BaseUrl extends Zend_View_Helper_Abstract { // ou implements Zend_View_Helper_Interface
    function baseUrl() {
        $fc = Zend_Controller_Front::getInstance();
        // Récupération d'une instance du front controller 
        return $fc->getBaseUrl();
    }
}

Regardes les aides de vues incluses dans le ZF pour t'inspirer.

Et associes le dossier "local/application/views/helpers/" à ta vue :

Code:

// Bootstrap ou plugin suivant ce que tu as déjà
$view->addHelperPath('chemin/vers/local/application/views/helpers/', 'Mes_View_Helper');

A+


Less code = less bugs
Contributeur ZF - ZCE - ZFCE - Doc ZF (CHM & PDF) - Vice-trésorier AFUP 2011
Ubuntu 11.04 - ZendServer

Hors ligne

 

#3 13-01-2009 18:50:06

phbord
Nouveau membre
Date d'inscription: 13-01-2009
Messages: 6

Re: [Résolu] problème d'affichage avec la méthode getBaseUrl()

MERCI
maintenant, ça fonctionne

Hors ligne

 

#4 27-03-2010 19:48:36

shadypierre
Membre
Date d'inscription: 24-03-2010
Messages: 617

Re: [Résolu] problème d'affichage avec la méthode getBaseUrl()

Merci bcp pour cette correction big_smile

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