Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 26-11-2008 16:45:46

yegortitov
Membre
Date d'inscription: 21-11-2008
Messages: 17

Probleme de recuperation de langue

Bonjour à tous,

j'ai suivi ce tutorial pour faire un site multi langue : http://www.joecarbure.com/dw2/doku.php? … _framework

Mon problème est : je n'arrive pas à récupérer la langue pour la traduction, le message d'erreur suivant apprait :

Code:

Notice: Undefined property: Zend_Controller_Front::$getRequest in E:\betool\index.php on line 61

Fatal error: Call to a member function getParam() on a non-object in E:\betool\index.php on line 61

Voici mon code :

Code:

$controller = Zend_Controller_Front::getInstance();

$router = new Zend_Controller_Router_Rewrite();
$router->addRoute(
    "default",
    new Zend_Controller_Router_Route(
        "/:language/:controller/:action/*",
        array(
            "language"      =>  "fr",
            "controller"    =>  "Joueur",
            "action"        =>  "new"
        )
    )
);

$controller->setRouter($router);

// Définition des langues
$language = $controller->getRequest->getParam("language", "fr");

switch ( $language ) {
   case "en":
      $locale = new Zend_Locale("en");
      break;
   default:
      $locale = new Zend_Locale("fr");
      break;
}
 
// Chargement du fichier de traduction
$translator = new Zend_Translate('tmx', TRADUCTION_DIR.'/translations.tmx', $locale);
Zend_Registry::set('translator', $translator);

Merci pour votre aide

Hors ligne

 

#2 26-11-2008 18:30:08

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

Re: Probleme de recuperation de langue

Hello

getRequest() avec les parenthèses.

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 26-11-2008 19:42:37

yegortitov
Membre
Date d'inscription: 21-11-2008
Messages: 17

Re: Probleme de recuperation de langue

mikaelkael a écrit:

Hello

getRequest() avec les parenthèses.

A+

Merci mais ça ne marche pas non plus, j'ai tjs la même erreur. Merci pour votre aide

LE message :

Code:

Fatal error: Call to a member function getParam() on a non-object in /Applications/MAMP/htdocs/betool/index.php on line 61

Dernière modification par yegortitov (26-11-2008 19:50:13)

Hors ligne

 

#4 26-11-2008 19:50:30

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

Re: Probleme de recuperation de langue

Hello,

Non ce n'est plus la même erreur, ce n'est pas possible wink .

A+


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

Hors ligne

 

#5 26-11-2008 19:54:00

yegortitov
Membre
Date d'inscription: 21-11-2008
Messages: 17

Re: Probleme de recuperation de langue

mikaelkael a écrit:

Hello,

Non ce n'est plus la même erreur, ce n'est pas possible wink .

A+

oui c'est exact mais une erreur persiste, je ne comprends pas. je continue à chercher

Code:

Fatal error: Call to a member function getParam() on a non-object in /Applications/MAMP/htdocs/betool/index.php on line 61

pour :

Code:

$language = $controller->getRequest()->getParam("language", "fr");

Dernière modification par yegortitov (26-11-2008 19:59:32)

Hors ligne

 

#6 26-11-2008 21:40:28

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

Re: Probleme de recuperation de langue

Hello,

Il manque sans doute qqch dans le code du tuto car effectivement la requête (Zend_Controller_Request) n'est pas encore initialisée donc getParam() n'est pas accessible.

A+

Dernière modification par mikaelkael (26-11-2008 21:40:49)


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

Hors ligne

 

#7 27-11-2008 09:23:33

nORKy
Membre
Date d'inscription: 06-03-2008
Messages: 1098

Re: Probleme de recuperation de langue

C'est clair qu'il doit manquer des choses dans le tuto !

Soit, tu crées ton 'request' et tu la passes au front (via setRequest) soit tu rentres dans ta boucle de dispatching (et il va créé lui même un objet request)


----
Gruiiik !

Hors ligne

 

#8 27-11-2008 09:39:55

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

Re: Probleme de recuperation de langue

Hello,

Effectivement nORKy, hier soir, j'avais un peu la tête dans le pâté mais pour moi on ne fait pas :

Code:

$language = $controller->getRequest()->getParam("language", "fr");

tant que le routage n'a pas été effectué.

Ceci dit, je n'ai peut-être pas encore ressorti la tête smile (... du pâté).

A+

Dernière modification par mikaelkael (27-11-2008 09:40:19)


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

Hors ligne

 

#9 27-11-2008 10:14:25

Guillhomme
Membre
Date d'inscription: 09-10-2008
Messages: 102

Re: Probleme de recuperation de langue

Sinon pour savoir de quel objet ca vient, details ta ligne :

Code:

$language = $controller->getRequest()->getParam("language", "fr");

va devenir :

Code:

$request =controller->getRequest();
$language = $request->getParam("language", "fr");

Ainsi, avec la ligne de l'erreur, tu sauras si l'erreur vient de l'object request ou le param, plus facile pour cerner la cause du bug

Hors ligne

 

#10 27-11-2008 10:30:18

yegortitov
Membre
Date d'inscription: 21-11-2008
Messages: 17

Re: Probleme de recuperation de langue

Guillhomme a écrit:

Sinon pour savoir de quel objet ca vient, details ta ligne :

Code:

$language = $controller->getRequest()->getParam("language", "fr");

va devenir :

Code:

$request =controller->getRequest();
$language = $request->getParam("language", "fr");

Ainsi, avec la ligne de l'erreur, tu sauras si l'erreur vient de l'object request ou le param, plus facile pour cerner la cause du bug

l'erreur est la suivante :

Code:

Fatal error: Call to a member function getParam() on a non-object in

Hors ligne

 

#11 27-11-2008 10:46:44

nORKy
Membre
Date d'inscription: 06-03-2008
Messages: 1098

Re: Probleme de recuperation de langue

Si tu veux que le code haut plus marche, essai de rajouter ca :

Code:

$request = new Zend_Controller_Request_Http();
front->setRequest($request);

la, request sera initialiser..

Mais, je ne pense pas que ca va t'aider par la suite...

mikaelkael a écrit:

Hello,

Effectivement nORKy, hier soir, j'avais un peu la tête dans le pâté mais pour moi on ne fait pas :

Ceci dit, je n'ai peut-être pas encore ressorti la tête smile (... du pâté).

A+

Et il est bon le pâté ?! :p
Surement meilleurs que d'avoir la tête dans le *BIP*

Dernière modification par nORKy (27-11-2008 10:46:59)


----
Gruiiik !

Hors ligne

 

#12 05-12-2008 22:05:58

wawash
Nouveau membre
Date d'inscription: 05-12-2008
Messages: 1

Re: Probleme de recuperation de langue

Bonjour,

perso j'utilise ça pour récupérer la langue dans l'URL :

Code:

$request =  new Zend_Controller_Request_Http();
$router->route($request);

$request->getParam("language")

smile

Edit: ou là ils conseillent l'utilisation d'un plugin : http://www.z-f.fr/forum/viewtopic.php?id=1432

Dernière modification par wawash (05-12-2008 22:15:02)

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