SITE MULTILINGUE...Je suis à la dérive !!!

cs_kenny18 Messages postés 116 Date d'inscription lundi 20 novembre 2000 Statut Membre Dernière intervention 30 août 2006 - 31 août 2005 à 09:21
codefalse Messages postés 1123 Date d'inscription mardi 8 janvier 2002 Statut Modérateur Dernière intervention 21 avril 2009 - 16 janv. 2008 à 09:05
salut,

Dans le cadre d'un test, je dois créer un site multilingue. J'ai modifié à ma sauce le script retrouvé sur phpdebutant.org. Le code qui est proposé ne me convient pas complètement car l'on ne peut choisir "sa" langue qu'à l'ouverture du site. Ce que je recherche, c'est de pouvoir, en tout temps lorsque je navigue, changer la langue.

How to do that ?

merci

kenny #18

30 réponses

cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
1 sept. 2005 à 09:58
Pas besoin d'un fichier texte, mais d'un fichier php. Prenons un exemple :



fichier "fr.php"



<?php

$langue['page_accueil']='Bienvenue';

?>



fichier "en.php"



<?php

$langue['page_accueil']='Welcome';

?>


(mon anglais est recherché hein ^^)



bref ensuite soit le visiteur n'a pas déjà choisi sa langue et donc c'est le français par défaut, on enregistre en session :



<?php

if(!isset($_SESSION['langue']))

{

$_SESSION['langue']='fr';

}



include 'langues/'.$_SESSION['langue'].'.php';



?>



après y'a le formulaire à gérer quand on change de langue, m'enfin c'est pas sorcier ;-)



et je parie que cette solution est largement plus rapide tout en étant
aussi facilement maintenable (un fichier séparé par langue, fichier
plus léger, inutile de parser tout le fichier xml vu qu'il n'y en a
pas, si ton fichier xml fait 1mo vu que t'as dix langues ça va craindre
niveau temps de génération, tandis que là ce ne sont que des variables
dans des fichiers php).


<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li>
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
1 sept. 2005 à 12:14
Je suis d'accord. Tout dépend du type de site et de raduction. mais
cette solution est plus lourde en coûts de développement. T'as nbre
langues * fichiers php à générer. Ca peut s'avérer pénible.

Mais bon c'est vraiment un choix à faire selon le type de site, et de traduction.
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
1 sept. 2005 à 12:53
"T'as nbre langues * fichiers php à générer. Ca peut s'avérer pénible."



heu ouais mais le fichier php n'est composé que de variables, ça
revient au même (et c'est même plus simple selon moi) que de faire un
fichier xml, imagine que t'es 50 langues dans ton fichier xml, d'une
part c'est plus lent à traiter, et d'autre part si tu veux changer un
mot dans une traduction, bon courage... alors que le fichier php vu
qu'il est unique (pour la langue concernée) c'est bien plus rapide de
retrouver la phrase à l'aide du nom de la variable ^^



Enfin bon c'est effectivement un choix.
<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li>
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
1 sept. 2005 à 13:03
Lol, j'ai encore des arguments, mais bon, les deux solutions ne se
valent pas sur le meme terrain ;-) c'est une question de choix
techniques, environnementaux etc...

Par exemple, ta solution n'est valable que dans le cadre d'un site
uniquement php. La mienne a l'avantage de pouvoir s'accomoder de
n'importe quelle technologie. On peut exporter ou importer facilement
une traduction, aussi.

La modification du fichier xml n'est pas un probleme mais ça tu ne
pouvais pas le savoir si tu n'es pas habitué à utiliser des logiciels
dédiés tels que XMLSpy, et les XPath, par exemple.

Mais bon, toujours, je suis d'accord avec toi lol. ta solution est plus
simple et plus performante. Elle est juste moins portable, moins
malléable, moins adaptable dans un milieu entreprise.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
1 sept. 2005 à 13:25
"Par exemple, ta solution n'est valable que dans le cadre d'un site
uniquement php. La mienne a l'avantage de pouvoir s'accomoder de
n'importe quelle technologie. On peut exporter ou importer facilement
une traduction, aussi."



Heu pour exporter et importer c'est aussi simple avec ma solution,
suffit de créer un fichier texte (pourquoi pas XML tiens lol) et
ensuite de créer le fichier php correspondant. Ensuite pour le site
uniquement php bah oui, à vrai dire je fais mes sites uniquement en php
pour le moment ^^



"La modification du fichier xml n'est pas un
probleme mais ça tu ne pouvais pas le savoir si tu n'es pas habitué à
utiliser des logiciels dédiés tels que XMLSpy, et les XPath, par
exemple."



Effectivement, j'en suis toujours avec mon vieux bloc-notes des années 20 (lol)



"Mais bon, toujours, je suis d'accord avec toi lol. ta
solution est plus simple et plus performante. Elle est juste moins
portable, moins malléable, moins adaptable dans un milieu entreprise."



Perso je préfère la performance et la portabilité, après comme je l'ai
dit vu que je ne fais ça qu'en PHP, pour moi c'est tout à fait portable
;-)



Et donc on en revient comme tout à l'heure, c'est un choix ;-)

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li>
0
codefalse Messages postés 1123 Date d'inscription mardi 8 janvier 2002 Statut Modérateur Dernière intervention 21 avril 2009 1
16 janv. 2008 à 07:48
J'ai lu tout votre débat, et en fait vous avez tous raison, que ce soit l'idée de Malalam (ILX) ou Anthomicro (ILV (I Love Vars :p)), le problème, à mon avis, vient de la quantitée à traiter.
En effet, l'idée de Anthomicro est abordable quand les traductions ne sont pas conséquentes, si on commence à avoir 10 000 traductions, ca peu vite faire lourd le fichier à charger (et surtout le travail effectué derriere par Php pour aller les différentes valeurs en mémoire). Dans ce cas, l'idée de Malalam serait la plus adéquate, car le parsing serait moin lourd.

Enfin ca c'est mon avis.
Apres c'est vrai que perso j'obterai plus pour une bdd tout simplement pour déléguer le travail au serveur sgbd plutôt qu'à PHP, mais bon, c'est un choix
0
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
16 janv. 2008 à 07:53
un up de deux ans et demie...

/**
* @author coucou747 <coucou747@hotmail.com>
* @see irc://cominweb.uni-irc.net/#programmation
*/
0
codefalse Messages postés 1123 Date d'inscription mardi 8 janvier 2002 Statut Modérateur Dernière intervention 21 avril 2009 1
16 janv. 2008 à 07:56
arf j'avais pas vu ca :D
Je me disais bien que ca faisait bizare de voir Anthomicro, ca fait longtemps qu'il à plus donné signe ?!

euh ... désolé pour le dérangement O_o
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
16 janv. 2008 à 08:13
Effectivement, fallait aller le chercher celui-là...;-)
0
codefalse Messages postés 1123 Date d'inscription mardi 8 janvier 2002 Statut Modérateur Dernière intervention 21 avril 2009 1
16 janv. 2008 à 09:05
et pourtant il était en premiere ligne dans le nouveau code posté sur la page d'accueil, dans "Post en rapport sur le forum" c'est pour ca que j'ai cru qu'il était d'actualité :p
Faudra modifier un peu l'algo pour pas piocher des trucs morts :p
0
Rejoignez-nous