Autor | Zpráva | ||
---|---|---|---|
Orlik Profil |
#1 · Zasláno: 9. 2. 2012, 02:13:39
Upravuji firemní web, ve kterém je jedna tabulka, která obsahuje obrázky. Tato jedna tabulka je určena pro českou i v anglickou verzi, jelikož dosud neobsahovala žádný text, jenom obrázky. Nyní vznikl požadavek doplnit do tabulky jednoduchý text, ale aby se zobrazoval v české i anglické verzi v příslušném jazyce. Nevím jestli musím udělat novou tabulku pro anglickou verzi, nebo jestli je to možné zapsat kódem do jednoho *.php souboru tak, aby se v každé jazykové verzi zobrazil příslušný správný text. Např. v češtině "Aktuální vydání" a v angličtině "Current edition" Zkoušel jsem zápis ve tvaru:
<!--:cs--> <p>Ukončená edice:</p> <!--:en--> <p>Completed edition:</p> ale to mi nefunguje. No nejsem znalý PHP, obměňuji v tom webu jen texty. Děkuji za případnou radu. |
||
JaySee Profil |
Také jsem musel řešit podobný problém a nakonec jsem si poradil následovně. Zvolil jsem si nějakou nepravděpodobnou sekvenci znaků (třeba #NEXT#) a do databáze to uložil jako "Česky#NEXT#Anglicky#NEXT#Rusky#NEXT#Spanelsky" .. a pak to v PHP načetl z databáze jako třeba $Data["popisek"] a prohnal to funkcí exlpode... tedy $popis = explode("#NEXT#",$Data["popisek"]);
Čímž mám pod $popis[0]; -> češtinu || $popis[1]; ->anličtinu || $popis[2]; -> ruštinu.... Jen je třeba důsledně dodržovat pořadí jazyků a ikdyby neměl být popisek vyplněn, tak zapsat #NEXT# do databáze. Není to uplně nejelegantnější řešení, ale rozhodně funguje a je primitivní na implementaci. Tak snad pomůže. |
||
nemeja Profil |
#3 · Zasláno: 10. 2. 2012, 01:40:24
Nebylo by jednodušší přidat do tabulky sloupce pro jednotlivé mutace?
Př. tabulka clanky: id | cz | en 1 | ahoj | hi v php potom: $dotaz = mysql_fetch_assoc(mysql_query("SELECT * FROM clanky WHERE id = 1")); $cz = $dotaz ['cz']; $en = $dotaz['en']; |
||
JaySee Profil |
nemeja:
určitě by to bylo lepší:-D když jsem psal tu odpověď, nějak mi uniklo, že Orlik může manipulovat s tabulkami v databázi :-D Pochopil jsem to jako že potřebuje pirátit v jednom sloupci. |
||
Ugo Profil |
#5 · Zasláno: 10. 2. 2012, 08:29:22
kdybych potřeboval pirátit v jednom sloupci tak bych spíš volil serialize() pole, jako klíč jazyk a je to celkem univerzální
|
||
Orlik Profil |
Všem kdo přispěli velké díky, řešení od nemeja funguje. Je vyřešeno, skvělé!
|
||
Časová prodleva: 12 let
|
0