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
Ajoutez [lang=php|phtml|javascript|sql|perl|xml|shell|html] au début de votre code pour activer le syntax highlighting

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);
Ajoutez [lang=php|phtml|javascript|sql|perl|xml|shell|html] au début de votre code pour activer le syntax highlighting

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
Ajoutez [lang=php|phtml|javascript|sql|perl|xml|shell|html] au début de votre code pour activer le syntax highlighting

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
Ajoutez [lang=php|phtml|javascript|sql|perl|xml|shell|html] au début de votre code pour activer le syntax highlighting

pour :

Code:

$language = $controller->getRequest()->getParam("language", "fr");
Ajoutez [lang=php|phtml|javascript|sql|perl|xml|shell|html] au début de votre code pour activer le syntax highlighting

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");
Ajoutez [lang=php|phtml|javascript|sql|perl|xml|shell|html] au début de votre code pour activer le syntax highlighting

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");
Ajoutez [lang=php|phtml|javascript|sql|perl|xml|shell|html] au début de votre code pour activer le syntax highlighting

va devenir :

Code:

$request =controller->getRequest();
$language = $request->getParam("language", "fr");
Ajoutez [lang=php|phtml|javascript|sql|perl|xml|shell|html] au début de votre code pour activer le syntax highlighting

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");
Ajoutez [lang=php|phtml|javascript|sql|perl|xml|shell|html] au début de votre code pour activer le syntax highlighting

va devenir :

Code:

$request =controller->getRequest();
$language = $request->getParam("language", "fr");
Ajoutez [lang=php|phtml|javascript|sql|perl|xml|shell|html] au début de votre code pour activer le syntax highlighting

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

Ajoutez [lang=php|phtml|javascript|sql|perl|xml|shell|html] au début de votre code pour activer le syntax highlighting
Ajoutez [lang=php|phtml|javascript|sql|perl|xml|shell|html] au début de votre code pour activer le syntax highlighting

l'erreur est la suivante :

Code:

Fatal error: Call to a member function getParam() on a non-object in
Ajoutez [lang=php|phtml|javascript|sql|perl|xml|shell|html] au début de votre code pour activer le syntax highlighting

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);
Ajoutez [lang=php|phtml|javascript|sql|perl|xml|shell|html] au début de votre code pour activer le syntax highlighting

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")
Ajoutez [lang=php|phtml|javascript|sql|perl|xml|shell|html] au début de votre code pour activer le syntax highlighting

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