IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Symfony PHP Discussion :

Modification de la Local


Sujet :

Symfony PHP

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 51
    Points : 28
    Points
    28
    Par défaut Modification de la Local
    Bonjour a tous,

    J'essai en vain de modifier la langue utilisé par default aprés appuie sur un lien pour choisir la langue.

    Voici mon controleur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
     
    <?php
     
    namespace [CHEMIN BUNDLE]\Controller;
     
    use Symfony\Bundle\FrameworkBundle\Controller\Controller;
     
    class GlobalController extends Controller
    {
        public function setLanguageAction($langue = null) {
     
                    if($langue != null)
                    {
                        $this->getRequest()->setLocale($langue);
                    }
     
                    // on tente de rediriger vers la page d'origine
                    $url = $this->container->get('request')->headers->get('referer');
                    if(empty($url)) {
                        $url = $this->container->get('router')->generate('keeptraffic_live_wl_homepage');
                    }
                    return $this->redirect($url);
            }
    }
    ?>
    Voici mon fichier de routage :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    setLanguage:
        pattern:  /language/{langue}
        defaults: { _controller: [CHEMIN BUNDLE]:Global:setLanguage }
        requirements:
            _locale: fr|en|de|es|it|se|pt|cn|ae
    et voici dans mon pied de page :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <!-- footer.html.twig -->
                <a href="{{ path('setLanguage', { 'langue': 'fr' }) }}">Francais</a>
                <a href="{{ path('setLanguage', { 'langue': 'en' }) }}">Anglais</a>
            <!-- etc... -->
    Tout les variables transitent bien, cependant ma local en cours d'utilisation ne change pas...

    J'ai oublié de faire un truc ?

    j'ai essayé de vider le cache, rien n'y fait.

    Merci pour votre aide.

  2. #2
    Membre à l'essai
    Inscrit en
    Février 2011
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Février 2011
    Messages : 10
    Points : 12
    Points
    12
    Par défaut
    Bonjour,

    Si tu peux dumper la variable $langue juste après la déclaration de ta méthode, et qu'elle n'est pas null, effectivement tes paramètres passent correctement.

    alors je suis pas sûre mais...

    je pense que tu redéfinis bien la langue dans
    $this->getRequest()->setLocale($langue);
    mets un var dump juste après avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $this->getRequest()->getLocale()
    et tu seras fixé.

    mais après tu n'utilises pas le même objet request (ou du moins pas la même façon de l'appeler)
    $this->container->get('request')->headers->get('referer');
    il faudrai vérifier que tu es le meme résultat qu'avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $this->getRequest()->headers->get('referer');
    par contre ça ne devrai pas résoudre le problème de :
    $this->container->get('router')->generate('keeptraffic_live_wl_homepage');
    as-tu cherché du coté des sessions ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $this->get('session')->set('_locale', $langue);

Discussions similaires

  1. Modifications de base locale vers base distante
    Par cmoiscrat dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 21/09/2009, 15h31
  2. Réponses: 10
    Dernier message: 18/06/2009, 09h16
  3. Modif mdp admin local d'une liste de serveur
    Par karma_xy dans le forum VBScript
    Réponses: 3
    Dernier message: 12/03/2009, 13h43
  4. Modification de la data source Local en réseau ! Help me please !
    Par wisemanvsfatboy dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 20/10/2008, 21h25
  5. redirection de pages html vers une page locale? (modif dns?)
    Par johan_b dans le forum Autres Logiciels
    Réponses: 3
    Dernier message: 20/01/2006, 16h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo