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

EDI, CMS, Outils, Scripts et API PHP Discussion :

gettext ne fonctionne pas


Sujet :

EDI, CMS, Outils, Scripts et API PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 32
    Par défaut gettext ne fonctionne pas
    Bonsoir,

    Je me permets de venir vous déranger car j'ai un souci.
    Je m'essaie à gettext pour réaliser un petit site multilingues. J'ai décoché dans le php.ini la ligne correspondante, j'ai redémarré mon wampserver et n'ai eu aucune erreur. (Je suis sous windows 7 - 64 bits.)

    Sauf que ça ne fonctionne pas. La traduction ne se fait pas. Alors pendant plusieurs heures, je cherche sur le net où mon code pourrait être faux. J'essaie de nombreux codes mais rien ne marche. Comme mon environnement de prod (ovh donc linux) est déjà prêt, je le pousse et là magie ça fonctionne !! Donc mon code est bon.

    Donc le souci vient de wampserver qui doit être mal configuré mais je n'ai pas d'erreur dans les logs ni au lancement.

    Si vous connaissiez une batterie de tests à effectuer pour vérifier que ça fonctionne, je suis preneur.

    Un grand merci d'avance.

    Serait-ce possible que ce soit à cause du fait que je bosse sur windows ?
    Et que pour mes trad, j'utilise fr_FR et en_US et que je compile mes .po en .mo sur mon ubuntu ?

    Un conflit windows/linux ?

  2. #2
    Futur Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2004
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Septembre 2004
    Messages : 4
    Par défaut
    Bonsoir,

    Je me suis pas mal documenté sur GetText et j'ai pu lire que ça ne fonctionne pas sous WampServer. J'imagine que t'as déjà eu ta réponse depuis. Envoie ça sur un serveur Linux par exemple et ça devrait marcher si tu as aucune erreur dans ton code.

  3. #3
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 693
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 693
    Par défaut
    Citation Envoyé par ericdebra Voir le message
    Bonsoir,

    Je me suis pas mal documenté sur GetText et j'ai pu lire que ça ne fonctionne pas sous WampServer. J'imagine que t'as déjà eu ta réponse depuis. Envoie ça sur un serveur Linux par exemple et ça devrait marcher si tu as aucune erreur dans ton code.
    Ca fonctionne très bien sous wampserver.
    Il y'a juste certaines version de PHP 5.3 (rien à voir avec wampserver) où gettext est buggé sous windows.

    Si tu veux gettext sous wampserver soit tu passe en php 5.2 sois en php >=5.3.3
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 32
    Par défaut
    Salut,

    Merci pour vos réponses.
    En fait non ericdebra je n'ai pas trouvé ma réponse. Personne ne sait que faire et j'ai pourtant essayé plusieurs forums.

    @grunk, j'ai installé la dernière version de wamp hier pour voir si ce n'était pas à cause de ça. J'ai donc PHP 5.3.5.

    J'ai aussi essayé de télécharger un autre php_gettext.dll que celui fourni dans wamp. Le nouveau pèse 20 ko (contre 40) et me génère l'erreur suivante : Call to undefined function bindtextdomain().

    J'ai donc remis l'ancien. J'ai lu aussi parfois qu'il fallait compiler gettext pour php. Qu'est-ce que ça veut dire ? Et comment le faire ? Quelle est cette commande : php --with-gettext et comment l'exécuter ?

    J'suis toujours perdu

    Ah je lis aussi qu'il faut installer les locales... de quoi il s'agit, comment installer des locales sous windows ?

    Merci d'avance

  5. #5
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 693
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 693
    Par défaut
    Sur le tout dernier wampserver (32bit) ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    setlocale(LC_ALL,$langue);
    putenv("LANG=$langue");
    putenv("LC_ALL=$langue");
    $tradFile = 'messages';
    bindtextdomain($tradFile, ROOT_PATH."includes/lang/");
    bind_textdomain_codeset($tradFile,'UTF-8');
    textdomain($tradFile);
    marche très bien chez moi.

    J'ai aussi essayé de télécharger un autre php_gettext.dll que celui fourni dans wamp. Le nouveau pèse 20 ko (contre 40) et me génère l'erreur suivante : Call to undefined function bindtextdomain().
    Pour les extension , si tu veux les remplacer il faut trouver la bonne version et c'est généralement très compliquer selon si ton php à été compiler en Vc6, Vc9 et en thread safe ou Non thread safe.

    J'ai donc remis l'ancien. J'ai lu aussi parfois qu'il fallait compiler gettext pour php. Qu'est-ce que ça veut dire ? Et comment le faire ? Quelle est cette commande : php --with-gettext et comment l'exécuter ?
    Ce sont des paramètres de compilation , dans ton cas quand tu télécharge PHP pour windows ou un wampserver , php est déjà compiler tu n'as donc pas à t'en occuper
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 32
    Par défaut
    Bonjour,

    Merci pour ta réponse mais ça ne marche toujours pas.
    J'ai installé rapidement sur mon serveur local au boulot (windows XP) qui est en PHP 5.2.11.

    Ca ne fonctionne pas non plus. Mon code est le suivant, au cas où :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    setlocale(LC_ALL, $langueLocale); // On modifie les informations de localisation en fonction de la langue
    putenv('LANG = $langueLocale'); // On modifie la variable d'environnement
    putenv('LC_ALL = $langueLocale');
    $nomDesFichiersDeLangue = 'traductions'; // Le nom de nos fichiers .mo
    bindtextdomain($nomDesFichiersDeLangue, 'locale'); // On indique le chemin vers les fichiers .mo
    bind_textdomain_codeset($nomDesFichiersDeLangue, 'UTF-8');	
    textdomain($nomDesFichiersDeLangue); // Le nom du domaine par défaut
    Encore merci.

Discussions similaires

  1. [gettext] Ne fonctionne pas
    Par Neuromancien2 dans le forum Général Python
    Réponses: 2
    Dernier message: 10/08/2011, 17h09
  2. [Smarty] smarty gettext ne fonctionne pas pour la traduction
    Par HwRZxLc4 dans le forum Bibliothèques et frameworks
    Réponses: 0
    Dernier message: 18/07/2010, 12h11
  3. UNION qui ne fonctionne pas
    Par r-zo dans le forum Langage SQL
    Réponses: 7
    Dernier message: 21/07/2003, 10h04
  4. Un Hint sur un PopupMenu ne fonctionne pas !!??
    Par momox dans le forum C++Builder
    Réponses: 6
    Dernier message: 26/05/2003, 16h48
  5. ca ne fonctionne pas (generateur auto-incrémentant)
    Par tripper.dim dans le forum SQL
    Réponses: 7
    Dernier message: 26/11/2002, 00h10

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