| Autor | Zpráva | ||
|---|---|---|---|
| klaudius Profil * |
#1 · Zasláno: 2. 10. 2005, 00:00:50
Chtěl jsem se zeptat, jak se dá vytvořit vícejazyčná webová aplikce.
Napadlo mě, že bych to mohl udělat tak, že bych si vytvořil datové slovníkové soubory jako třeba CZ.dat EN.dat A například v cz.dat by na řádku 1 bylo třeba: "Vítám vás!" A v anglickém souboru by bylo na tom samém místě: "Welcome!" V PHP skriptu bych pak podle jazyka načítal texty buď z jednoho nebo z druhého souboru.. Určitě existuje i lepší řešení, prosím poraďte. Díky. |
||
| ronnie Profil |
#2 · Zasláno: 2. 10. 2005, 00:11:13
Dělá se to pomocí gettext, podívej se na interval, byl tam seriál od koseka...
|
||
| mastermind Profil |
#3 · Zasláno: 2. 10. 2005, 00:16:02
zbytocne by to bola komplikacia.
co tak urobit dva php subory. eng.php a cz.php. obsah napr: eng.php: cz.php: v samotnej stranke by si podla zvoleneho jazyka pouzil bud include('eng.php'); alebo include('cz.php'); mastermind |
||
| thingwath Profil |
#4 · Zasláno: 2. 10. 2005, 01:08:58
Jsem pro gettext :-)
|
||
| klaudius Profil * |
#5 · Zasláno: 2. 10. 2005, 01:51:56
mastermind: takze jedno VELKE asociovaene pole? nebude to zpomalovat aplikaci?
thingwath: kde ho mohu stahnout? a jak se vlastne instalujou takove knihovny? |
||
| mastermind Profil |
#6 · Zasláno: 2. 10. 2005, 09:33:00
nemusi to byt jedno mozes si to rozdelit na viac casti. vyhoda tohto riesenia je v tom, ze sa lahko preklada.
|
||
| ronnie Profil |
#7 · Zasláno: 2. 10. 2005, 11:24:24
Proboha, na takové aplikace je určitě nejlepší gettext knihovna, na interval.cz vychycházel článek, určitě je to lepší řešení než velké pole. Je to přehlednější a rychlejší, tak nevidím důvod, proč se štávát s asoc. polem:)
|
||
| mastermind Profil |
#8 · Zasláno: 2. 10. 2005, 11:30:57
jasne ze gettext je krajsie riesenie. on vsak chcel moznosti, tak som mu jednu poskytol :)
|
||
| Leo Profil |
#9 · Zasláno: 2. 10. 2005, 11:48:18
Ono je jedno, jake reseni pouzijete - z pohledu rychlosti - protoze ty stranky se urcite nebudou menit kazkou sekundu a tudiz se daji predzpracovat a kesovat, a snadnost uprav a jejich konzistence je dulezitejsi. Gettext pouziva jakesi binarni soubory, a ty me osobne nejsou sympaticke. Leo
|
||
| thingwath Profil |
#10 · Zasláno: 2. 10. 2005, 11:51:33
Binární soubory zřejmě kvůli té rychlosti a efektivitě. Že je to zrovna tobě jedno jak je to rychlé ještě neznamená, že se na to autoři mohou vykašlat :-) Nakonec jde o řešení co používá většina linuxových aplikací, třeba.
|
||
|
Časová prodleva: 10 dní
|
|||
| klaudius Profil * |
#11 · Zasláno: 12. 10. 2005, 17:40:07
A jak na sve lokalni stanici nainstaluju Gettext? Kde ho stahnu? Pujde to, kdyz pouzivam Phptriad?
|
||
| llook Profil |
#12 · Zasláno: 12. 10. 2005, 18:19:57
Gettext bych nedoporučoval. Nebývá vždy nainstalovaný. Třeba taky proto, že z licenčních důvodů není distribuován spolu s PHP.
Několik článků o internacionalizaci vyšlo na Intervalu, zkus hledat tam. |
||
| Leo Profil |
#13 · Zasláno: 12. 10. 2005, 23:10:41
"Že je to zrovna tobě jedno jak je to rychlé ještě neznamená, že se na to autoři mohou vykašlat :-)"
Nepsal jsem, ze je MI to jedno, ale ze je to jedno. Leo |
||
| PerToon Profil |
#14 · Zasláno: 12. 10. 2005, 23:31:15
Připojím svůj dotaz radši do tohoto fóra, protože jde o podobný problém.
Celý web bude v originále anglický, ale pro české fanoušky bude mít českou verzi, která bude trochu odlišná, takže bych chtěl, aby každá stránka existovala dvakrát. Takže bych celý český web dal do jednoho adresáře. Ale zdá se mi divný aby všechno český bylo o jeden adresář níž. Je logický udělat - www.domena.org a cz.domena.org aby ekvivalentní stránky měly co nejpodobnější adresu? |
||
| llook Profil |
#15 · Zasláno: 13. 10. 2005, 00:11:16
Nakonec jde o řešení co používá většina linuxových aplikací, třeba.
Většina GNU GPL aplikací. On je totiž gettext pod touto restriktivní licencí, takže znemožňuje použití ve většině komerčních aplikacích... |
||
| CATerPILAR Profil * |
#16 · Zasláno: 14. 10. 2005, 19:40:08
A co když používám MyQSL databázte. Jak pak na vícejazyčné stránky?
Musím asi mít každou tabulku v databázi 2x a data do ní ukládat zvlášt česky a zvlášt anglicky? To je docela pakárna, ne? |
||
| ronnie Profil |
#17 · Zasláno: 14. 10. 2005, 19:52:08
CATerPILAR: podívej na interval, byla tam o tom série článků.
|
||
| Leo Profil |
#18 · Zasláno: 14. 10. 2005, 20:36:16
"Musím asi mít každou tabulku v databázi 2x a data do ní ukládat zvlášt česky a zvlášt anglicky?"
Muzete to ulozit/resit ruzne, ale verte, ze mnohem vetsi pakarna je mit rozsahlejsi rucne delany web ve dvou a vice jakykovych mutacich, kde najednou zjistite, ze musite u vsech neco predelat. Leo |
||
| igamenir Profil |
#19 · Zasláno: 14. 10. 2005, 22:42:58
Nevím, jak funguje zmiňované gettext, ale osobně to řeším přes pole a include:
Prostě udělám include "language_".$_SESSION['lang'].".txt"; a v tomto souboru nadefinuji pole $titles. Z toho si pak beru jednotlivé texty. |
||
|
Časová prodleva: 6 měsíců
|
|||
| uli Profil * |
#20 · Zasláno: 5. 4. 2006, 23:56:33
a co to řešit pomocí define
|
||
|
Časová prodleva: 20 let
|
|||
Toto téma je uzamčeno. Odpověď nelze zaslat.
0