Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 04-10-2007 22:21:29

verrec_s
Membre
Lieu: Paris
Date d'inscription: 19-09-2007
Messages: 26

Réinitilisation de la langue

Bonjour,

j'ai suivi le turo très bien fait (comme tous les autres) sur Kitpages et je rencontre un problème que je n'arrive pas à résoudre par rapport à un site multilangue.

je placé dans mon index.php bootstrap le bout de code suivant :

Code:

Zend_Loader::loadClass('Zend_Registry');
Zend_Registry::getInstance();
if (!Zend_Registry::isRegistered("locale"))
{
    Zend_Loader::loadClass("Zend_Locale");
    $locale = new Zend_Locale(Zend_Locale::BROWSER);
    $localeFr = new Zend_Locale("fr");
    $localeFrfr = new Zend_Locale("fr_FR");
    if (!$locale->equals($localeFr)) {
        if ($locale->equals($localeFrfr))
            $locale = $localeFr;
        else
            $locale = new Zend_Locale("en");
    }
     
        Zend_Registry::set("locale", $locale);
    Zend_Registry::get("logger")->debug("** locale non définie");
    $locale = Zend_Registry::get("locale");
    Zend_Registry::get("logger")->debug("** locale definie : $locale");
}

Je souhaite donc dans un premier temps détecter la langue du navigateur pour la sauvegader avec Zend_Registry. J'ai placé un test afin d'éviter de redéfinir la langue à chaque fois si celle-ci est déjà définie.
Dans mon site j'ai également un lien permettant de changer la langue manuellement. Lorsque je cllique dessus la page rechargée dans une balise <div> s'affiche bien avec la langue changée.

Ce que je ne comprend pas c'est qu'à chaque fois ma langue se redéfinie avec celle du navigateur. Il suffit pout cela de cliquer sur un lien.
Dans le fichier de log il s'ajoute à chaque fois que je clique sur un lien ou que je recharge une page :

   DEBUG (7): ** locale non définie
   DEBUG (7): ** locale definie : fr

et ce systématiquement.

Je pensais grâce à mon test

Code:

if (!Zend_Registry::isRegistered("locale"))

échapper à ce problème, mais il semble que quelque chose m'échappe.

Quelqun peut-il m'aider?

Dernière modification par verrec_s (04-10-2007 22:26:41)

Hors ligne

 

#2 04-10-2007 23:07:55

ndesaleux
Membre
Date d'inscription: 16-04-2007
Messages: 196
Site web

Re: Réinitilisation de la langue

C'est un registre et non pas une session.
Ton registre est accessible tout au long de l'utilisation de ta page et non de ton application (session)
place ta locale dans une session et vérifie son existence. Si c'est le cas alors tu devrais avoir la langue valable sur la page précédente sauf si tu as demandé de changer de langue :p

Hors ligne

 

#3 05-10-2007 09:20:22

verrec_s
Membre
Lieu: Paris
Date d'inscription: 19-09-2007
Messages: 26

Re: Réinitilisation de la langue

Ok, je vais rééssayer, car dans un premier temps c'est ce que j'avais fait sans meilleur résultat. C'est suite à cela que j'avais tenté le coup avec Zend_Registry

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