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

Zend_Form PHP Discussion :

Traduction label formulaire


Sujet :

Zend_Form PHP

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 6
    Points : 2
    Points
    2
    Par défaut Traduction label formulaire
    Bonjour,

    je me lance a travers un projet dans zend Framework, et je suis pour le moment en train des tester les traductions.
    Donc voila ce que j ai fait

    dans mon config.ini
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    ;initialisation des traductions
    resources.translate.adapter                 = "array"
    resources.translate.default                 = fr
    resources.translate.data                    = APPLICATION_PATH "/languages"
    resources.translate.options.scan            = "filename"
    resources.translate.options.disableNotices  = true
    resources.translate.options.logUntranslated = true
    puis dans le fichier fr.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <?php
    return array(
    	'key_1'=>'Traduction 1',
    	'key_2'=>'Traduction 2',
    );
    et donc si je veux récupérer une string traduite dans une vue
    je fais dans mon action
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $t = Zend_Registry::get('Zend_Translate');
    $this->view->toto = $t->translate('key_1');
    et dans ma vue
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php echo $this->toto; ?>
    jusque tout va bien, le problème est quand j'essaye de traduire un label de formulaire.
    pour j ai fait fait dans mon form
    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
    <?php
     
    class Application_Form_Login extends Zend_Form
    {
     
        public function init()
        {
            $t = Zend_Registry::get('Zend_Translate');
            $this->setName("login");
            $this->setMethod('post');
            //$this->setDisableLoadDefaultDecorators(true);
     
     
            $this->addElement(
                'text', 'username', array(
                'filters'    => array('StringTrim', 'StringToLower'),
                'validators' => array(
                    array('StringLength', false, array(0, 50)),
                ),
                'required'   => true,
                'label'      => $t->translate('key_2');,
            ));
     
        }
    et bien contre tout attente ca ne marche pas et recoit la notification suivante :

    Notice: Untranslated message within 'fr': Traduction 2 in C:\wamp\www\zf-auth-tutorial\library\Zend\Translate\Adapter.php on line 824
    j ai l'impression qu'il essaye de traduite la traduction ?

    peut être mon approche est pas bonne et je n ai pas trouvé de solution sur le forum ou sur google.

    Donc si une bonne âme pouvait m'aider ...

    Par avance merci
    Séb

  2. #2
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 6
    Points : 2
    Points
    2
    Par défaut suite
    j ai donc trouvé ce qui me générait cette erreur :

    Dans mon config.ini
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    resources.translate.options.logUntranslated = false
    maintenant on dirait que c'est un bug car mon label est bien traduit

    quelqu'un a déjà eu ce problème ?

    par avance merci
    Séb

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Février 2009
    Messages
    278
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Février 2009
    Messages : 278
    Points : 284
    Points
    284
    Par défaut
    Dans les formulaire la traduction est automatique pas besoin de mettre quoi que ce soit, donc en effet il essai de traduire la traduction

  4. #4
    Membre régulier
    Inscrit en
    Novembre 2007
    Messages
    250
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 250
    Points : 75
    Points
    75
    Par défaut
    +1, dans ton form tu fais simplement :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    $this->addElement(
                'text', 'username', array(
                'filters'    => array('StringTrim', 'StringToLower'),
                'validators' => array(
                    array('StringLength', false, array(0, 50)),
                ),
                'required'   => true,
                'label'      => 'key_2'
            ));

Discussions similaires

  1. [Joomla!] Traduction des formulaires
    Par narama87 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 22/05/2009, 01h24
  2. [A-07]: Modification texte Label formulaire
    Par amazon dans le forum VBA Access
    Réponses: 3
    Dernier message: 24/02/2009, 14h26
  3. [Formulaire] attribuer une valeur à un label
    Par celiaaa dans le forum IHM
    Réponses: 4
    Dernier message: 02/04/2007, 15h51
  4. Réponses: 2
    Dernier message: 12/06/2006, 11h51
  5. Label et progressbar dans formulaire
    Par jean-pierre96 dans le forum IHM
    Réponses: 2
    Dernier message: 03/05/2006, 12h58

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