|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : décembre 2006 Messages : 7 ![]() |
Bonjours,
Je developpe actuellement un site web pour un hotel il neccessitant 3 langues. J' ai pensais a diver solution tel que : l'utilisation de fichier xml parser par php , l'utilisation d'une bd mysql php, l'utilisation de template php. ... Mais je reste malgres tout perdu car je n'est que tres peu d'experience dans se genre de projet. Pouriez vous me conseiller sur une conception particuliere , merci |
|
|
00
|
|
|
#2 |
|
Membre expérimenté
![]() Inscription : mai 2002 Messages : 673 ![]() |
Les 3 solutions sont viables, et tu peux y ajouter la solution brute par define()...
Chacune a ses avantages et ses incovéniants... En fonction de la puissance du serveur et de la fréquentation, ma préférence personnelle se porte sur : La solution SQL si la fréquentation est relativement faible ou le serveur puissant. Ca permet de faire des outils de traductions en ligne, et donc de modifier les textes a la volée. En revanche, un texte, une requete ! ça va bouffer de la puissance. Si la fréquentation est importante ou le serveur limité, je suggère le include de fichier contenant des defines. Pour ma part, je combine les 2... pour la réalisation du proj, je fait tout en SQL. Lorsque je passe en prod, j'exporte ma base de texte dans des fichiers de define. Concretement, j'ai une fonction GetTexte($id) (ou {texte=id} quand je code en template, qui est convertie en GetTexte($id). Pendant le dev, ça tape direct dans le SQL et j'ai une chier d'outil pour manipuler les textes. Quand c'est fini, je remplace le GetTexte() pour qu'il retourne les define. |
|
|
00
|
|
|
#3 |
|
Membre chevronné
![]() ![]() |
Salut !
Pour ma part j'utilise des fichiers de langues qui contiennent les textes de l'interface. Les textes sont définis dans une variable appelée $lang : Code :
$lang['ajouter_news']='Ajouter une news'; En ce qui concerne le contenu du site, j'utilise une base de données. Ma table news par exemple contient un champ langue qui permet de spécifier si l'article est rédigée en anglais ou en français. A l'affichage je vais donc choisir seulement les news dont la langue correspond à celle de l'utilisateur. Si tu utilise une solution avec une base de données pour le texte de l'interface, alors cela prendra effectivement pas mal de ressource et mieux vaut avoir un système de cache en parallèle. Quand aux templates, ils permettent de séparer le code PHP et le design HTML... Ils sont très pratiques mais pas nécessaire pour un site multilingue. Bon courage ! A++ |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com