OVH Cloud OVH Cloud

commet vous gerez les sites multilangues?

4 réponses
Avatar
Shamil
j'essai d'imaginer la structure du site pour que la code php reste le meme
quelque soit la langue (2 ou 3) chosie par client. Je voudrais quelques
chose du genre
www.mysite.org/index.php?LANG=FR
et
www.mysite.org/index.php?LANG=RU

et non
www.mysite.org/fr/index.php et www.mysite.org/ru/index.php.

La premiere idée venue etait de faire une base de données par langue.
(FR_SITE, RU_SITE etc), avec les tables identiques. Dans ces tables j'aurai
les liens sur le contenue dans la langue chosie. Donc, theoriquement le
code PHP reste le meme quelque soit la langue, il suffit juste de se
connecter à la BD apropriée.

Votre avis?

--
Virtuellement votre

4 réponses

Avatar
Leonard Wauters
On 13 Aug 2003 21:48:48 GMT, Shamil wrote:

j'essai d'imaginer la structure du site pour que la code php reste le meme
quelque soit la langue (2 ou 3) chosie par client. Je voudrais quelques
chose du genre
www.mysite.org/index.php?LANG=FR
et
www.mysite.org/index.php?LANG=RU

et non
www.mysite.org/fr/index.php et www.mysite.org/ru/index.php.

La premiere idée venue etait de faire une base de données par langue.
(FR_SITE, RU_SITE etc), avec les tables identiques. Dans ces tables j'aurai
les liens sur le contenue dans la langue chosie. Donc, theoriquement le
code PHP reste le meme quelque soit la langue, il suffit juste de se
connecter à la BD apropriée.

Votre avis?


Tu pourrais créer une focntion langue($idmessage) qui se base sur une
variable globale pour déterminer la langue et va chercher la phrase
qui va bien dans une base de données. Tant qu'à faire,tu mets toutes
les phrases dans la meme bd avec une structure comme ca :
idphrase (clé primaire)
codepays (clé primaire 2)
traduction

en considérant que idphrase peut etre le message en francais...

Léo.

Avatar
Thierry B.
Pour ma part,

n'ayant que l'interface d'un programme à traduire et non du contenu (genre
articles, etc..), je n'ai pas utilisé une base de donnée, mais autant de
fichier traduc_XX.php, avec la déclaration des variables avec les
traductions propres au pays. Après au début de chaque script j'ai un include
traduc_XX.php ou XX est déterminé par détection de la langue du navigateur.

Après dans le code au lieu d'utiliser echo "Bonjour" j'utilise echo
$traduc['bonjour']

TB

"Shamil" a écrit dans le message de
news:
j'essai d'imaginer la structure du site pour que la code php reste le meme
quelque soit la langue (2 ou 3) chosie par client. Je voudrais quelques
chose du genre
www.mysite.org/index.php?LANG=FR
et
www.mysite.org/index.php?LANG=RU

et non
www.mysite.org/fr/index.php et www.mysite.org/ru/index.php.

La premiere idée venue etait de faire une base de données par langue.
(FR_SITE, RU_SITE etc), avec les tables identiques. Dans ces tables
j'aurai

les liens sur le contenue dans la langue chosie. Donc, theoriquement le
code PHP reste le meme quelque soit la langue, il suffit juste de se
connecter à la BD apropriée.

Votre avis?

--
Virtuellement votre


Avatar
Olivier Issaly
Thierry B. wrote:

n'ayant que l'interface d'un programme à traduire et non du contenu (genre
articles, etc..)


il me semble qu'on parle de localisation dans le premier cas et
d'internationalisation dans le second, je me trompes ?

je penses que la localisation ne pose pas de difficultés majeures, par
contre pour ce qui est de l'internationalisation, je suis preneur de
retour d'experience :) (par ex : comment géré le fait qu'un article
éxiste dans certaines langues et pas d'autre, etc .. ?)

a+
LionZion

Avatar
Salagir
On 14 Aug 2003 10:37:18 GMT, in fr.comp.lang.php,
Leonard Wauters wrote:
Tu pourrais créer une focntion langue($idmessage) qui se base sur une
variable globale pour déterminer la langue et va chercher la phrase
qui va bien dans une base de données.


Ca existe déjà, et ca s'appelle gettext

http://fr2.php.net/manual/fr/function.gettext.php

--
++++++++ Zelda, Dragon Ball, Mana and my (art)work at www.salagir.com ++++++++
«je vous savoire comment faire lancer un programme ,qui a comme resultat
devenire root , une fois il est executer.»
LD in Guide du linuxien pervers - "Petit lamer deviendra grand... peut-être"