Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][Smarty] Wielojęzykowość, rozmowa
Skie
post
Post #1





Grupa: Zarejestrowani
Postów: 555
Pomógł: 84
Dołączył: 20.02.2008
Skąd: Małopolska

Ostrzeżenie: (0%)
-----


Tak się zastanawiam jak zrobić wielojęzykowość na stronie, tzn. będzie na niej logowanie itd. I tak się zastanawiam, że lepiej będzie od siebie odgrodzić polskich i zagranicznych użytkowników, więc wygodnie będzie zrobić osobne bazy danych dla nich. I skoro będzie osobna baza danych to się zastanawiam czy jest sens robić pliki językowe tak jak teraz mam, czy nie lepiej po prostu zdublować stronę w innym folderze. (np. ang_ver i pl_ver). Pomysł być może wydaje się głupi, gdyż po co robić 2 kopie tej samej strony, skoro pliki językowe zrobią to samo? Ano, bo gdybym miał używać cache (w celu przyśpieszenia wczytywania strony, która będzie odświeżana naprawdę dużą ilość razy) to wygodniej byłoby gdyby plik nie musiał za każdym razem sprawdzać jaki język ma wyświetlić, gdyż wtedy cache traciłoby sens. Gdyby znowu robić osobną wersje każdego pliku dla każdego użytkownika, cache'ować i zapisywać na serwerze to byłoby wtedy wielke zaśmiecanie serwa, zwłaszcza przy dużej liczbie użytkowników.

Co o tym myślicie?


--------------------
Wieloprocesowość i wielowątkowość w PHP, poznaj Kraken PHP!
Serwer HTTP i WebSocket w PHP | Promise/A+
Strona Domowa | Elradia MMORPG
FireFox: make the web better.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
rafalp
post
Post #2





Grupa: Zarejestrowani
Postów: 224
Pomógł: 18
Dołączył: 4.02.2003
Skąd: Częstochowa

Ostrzeżenie: (0%)
-----


Może przyda Ci się moja klasa: http://forum.php.pl/klasaphp5_Rozne_wersje...ach_t96340.html
Przydaje sie do tłumaczenia zawartości strony mając pobrany np z bazy język użytkownika. Baza wystarczy jedna, a może być kilka języków.


--------------------
Go to the top of the page
+Quote Post
Skie
post
Post #3





Grupa: Zarejestrowani
Postów: 555
Pomógł: 84
Dołączył: 20.02.2008
Skąd: Małopolska

Ostrzeżenie: (0%)
-----


Tu nie chodzi o to, że nie wiem jak to zrobić, tylko o to, że osobne bazy są wygodniejsze niż jedna baza z polami np. "Lang". I właśnie pisałem, że gdybym miał za każdym razem sprawdzać język to za każdym razem cache na serwerze trzeba by było kasować (no może nie za każdym, ale w zdecydowanej większości) co by nie poprawiło szybkości działania strony, lecz pewnie by nawet ją spowolniło.


--------------------
Wieloprocesowość i wielowątkowość w PHP, poznaj Kraken PHP!
Serwer HTTP i WebSocket w PHP | Promise/A+
Strona Domowa | Elradia MMORPG
FireFox: make the web better.
Go to the top of the page
+Quote Post
rzymek01
post
Post #4





Grupa: Zarejestrowani
Postów: 592
Pomógł: 62
Dołączył: 3.08.2006

Ostrzeżenie: (0%)
-----


http://forum.php.pl/index.php?showtopic=44...mp;#entry476814

lub inne posty w tym temacie biggrin.gif


osobne bazy danych to zły pomysł, wystarczą osobne tabele jak coś, przeczytaj temat który podałem ci w linku biggrin.gif

Ten post edytował rzymek01 21.07.2008, 11:38:52


--------------------
:]
Go to the top of the page
+Quote Post
Skie
post
Post #5





Grupa: Zarejestrowani
Postów: 555
Pomógł: 84
Dołączył: 20.02.2008
Skąd: Małopolska

Ostrzeżenie: (0%)
-----


Czytałem go już, ale nadal to nie rozwiązuje problemu z cache i nadal uwazam ze osobne bazy danych w moim przypadku sa lepszym rozwiazniem niz wspolne ;-)

Załóżmy że osobne bazy są niezbędne - co wtedy zrobić? Osobno pliki każdej wer. językowej czy tylko osobne pliki z samym tekstem do tłumaczenia?

Ten post edytował Skie 21.07.2008, 11:46:03


--------------------
Wieloprocesowość i wielowątkowość w PHP, poznaj Kraken PHP!
Serwer HTTP i WebSocket w PHP | Promise/A+
Strona Domowa | Elradia MMORPG
FireFox: make the web better.
Go to the top of the page
+Quote Post
rzymek01
post
Post #6





Grupa: Zarejestrowani
Postów: 592
Pomógł: 62
Dołączył: 3.08.2006

Ostrzeżenie: (0%)
-----


Cytat(Skie @ 21.07.2008, 11:51:44 ) *
Ano, bo gdybym miał używać cache (w celu przyśpieszenia wczytywania strony, która będzie odświeżana naprawdę dużą ilość razy) to wygodniej byłoby gdyby plik nie musiał za każdym razem sprawdzać jaki język ma wyświetlić, gdyż wtedy cache traciłoby sens


chodzi ci o treść całego serwisu, czy tylko interfejs, a treść w języku takim w jakim to napisał dany user?

jesli tylko o interfejs to:
jak user jest zalogowany to pewnie pobierasz jego dane z bazy...
no i pobierzezs także jego język
i wreszcie zincludujesz odpowiedni plik, typu lang_pl.php

i koniec, bo w skrypcie dalej masz uzyte zmienne o wspólnych indeksach typu $lang['login'], co może oznaczać: loguj, login, innych jezyków nie znam to nie napiszę ci po hiszpańsku biggrin.gif


jesli o cały serwis:
większość jak powyżej, tzn. pobierasz dane i znasz jego język, np. en i wtedy do każdego zapytanie (tam gdzie to konieczne) dopisujesz postfix dla tabeli w tym wypadku en, czyli masz wiele tablic: newspl, newsen i w zapytaniu
  1. '(...)FROM news' . $lang . ' (...)'


biggrin.gif <-- oczywiście struktura bazy danych dla kazdego języka musi wyglądać identycznie

Ten post edytował rzymek01 21.07.2008, 12:17:40


--------------------
:]
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.08.2025 - 14:22