Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Pliki z jezykami
Spyder
post
Post #1





Grupa: Zarejestrowani
Postów: 269
Pomógł: 7
Dołączył: 12.10.2006
Skąd: Newcastle Upon Tyne

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


Witam

Planuje napisac cms z opcja wyboru jezyka. Jezyki chce zapisac w plikach php lub txt. Moze ktos mi podac jakies ciekawe pomysly jak to najlepiej zrobic. Pozdro


--------------------
Portfolio

Windows Vista Business SP1
DELL VOSTRO 200, Intel Core2 DUO E4600 2.4GHz, 3 GB RAM, ATI Radeon HD 2400 Pro, Screen DELL 22"

Pomogłem ci -> Kliknij "Pomógł" -> Dzięki
Go to the top of the page
+Quote Post
darophp
post
Post #2





Grupa: Zarejestrowani
Postów: 309
Pomógł: 20
Dołączył: 13.02.2010
Skąd: Kęty

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


Tworszysz plik:
lang_pl.php i lang_en.php
i w każdym odpowiednio:
  1. <?php
  2. ...
  3. $lang["kontakt"] = "Kontakt";
  4. ...
  5. ?>

  1. <?php
  2. ...
  3. $lang["kontakt"] = "Contact";
  4. ...
  5. ?>

No i jeśli np. masz panel admin. to ustawiasz sobie który plik ma includować. No chyba że chcesz, żeby użytkownik we własnych ustawieniach mógł zmienić który język strony chce mieć. Taka metoda "słowniczka". Możesz przez bazę danych, ale to nie zawsze będzie grało.


--------------------
Fotografia, projektowanie stron WWW | web-coding.pl - HTML 5 i CSS 3 - już w krótce ;)
Go to the top of the page
+Quote Post
Spyder
post
Post #3





Grupa: Zarejestrowani
Postów: 269
Pomógł: 7
Dołączył: 12.10.2006
Skąd: Newcastle Upon Tyne

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


Ok czyli wszystko na zwyklych zmiennych tak jak myslalem a nie lepiej jest na plikach txt? Tak jak np joomla?

CHECKED IN=Zkontrolováno
CHECKING TABLE=Kontroluji tabulku
CONF_CHECKED_IN=Položky ke zkontrolování byly nyní všechny zkontrolovány
CONFIRM YOUR ACCOUNT=Potvrďte váš účet
COULD_NOT_FIND_EMAIL=uživatel se zadaným emailem nemůže být nalezen
COULD_NOT_FIND_USER=Uživatel se zadaným uživatelským jménem a emailem nemůže být nalezen
EDIT YOUR DETAILS=Upravte váš profil
DATABASE_ERROR=vyskytla se databázová chyba. Zkuste to znovu později
DESCLOGINFORM=Tento modul zobrazí přihlašovací formulář s uživatelským jménem a heslem. Také zobrazí odkaz pro získání zapomenutého hesla. Pokud je povolena registrace uživatelů (viz Globální nastavení), zobrazí se i další odkaz vyzývající uživatele k registraci.
EMAIL=Email
EMAIL ADDRESS=Email
ERROR_SENDING_CONFIRMATION_EMAIL=vyskytla se chyba při posílání potvrzovacího emailu
ERROR_SENDING_REMINDER_EMAIL=vyskytla se chyba při posílání emailu připomínajícího uživatelské jméno
E_LOGIN_AUTHENTICATE=Uživatelské jméno nebo heslo nesouhlasí, případně ještě nemáte vytvořen účet.
E_SESSION_TIMEOUT=Vaše sezení vypršelo, prosím zkuste to znovu
E_NOLOGIN_BLOCKED=Přihlášení je zakázáno! Váš účet byl zablokován nebo ještě nebyl aktivován. Již jste klikli na ověřovací odkaz zaslaný vám v emailu?
FAILED TO COPY=Kopírování selhalo
FAX=Fax
FORGOT_YOUR_PASSWORD=Zapomenuté heslo?
FORGOT_YOUR_USERNAME=Zapomenuté uživatelské jméno?


--------------------
Portfolio

Windows Vista Business SP1
DELL VOSTRO 200, Intel Core2 DUO E4600 2.4GHz, 3 GB RAM, ATI Radeon HD 2400 Pro, Screen DELL 22"

Pomogłem ci -> Kliknij "Pomógł" -> Dzięki
Go to the top of the page
+Quote Post
tehaha
post
Post #4





Grupa: Zarejestrowani
Postów: 1 748
Pomógł: 388
Dołączył: 21.08.2009
Skąd: Gdynia

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


może być plik txt to nie robi właściwie różnicy, i lepiej jednak trzymać w tablicy niż w zmiennych bo przy dużej ilości zmiennych może dojść do jakiegoś konfliktu z nazwą, ustawiony przez użytkownika język możesz zapisać do ciastek i sesji żeby ładować taki język jaki sobie ustawi lub pobrać domyślny język przeglądarki

Ten post edytował tehaha 10.07.2010, 13:19:37
Go to the top of the page
+Quote Post
darophp
post
Post #5





Grupa: Zarejestrowani
Postów: 309
Pomógł: 20
Dołączył: 13.02.2010
Skąd: Kęty

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


To już od Ciebie zależy jak wolisz. Ja jednak gdybym miał pisać CMS'a (a będę go pisał za 2msc.) to wybrałbym na plikach php i zmiennych smile.gif


--------------------
Fotografia, projektowanie stron WWW | web-coding.pl - HTML 5 i CSS 3 - już w krótce ;)
Go to the top of the page
+Quote Post
Spyder
post
Post #6





Grupa: Zarejestrowani
Postów: 269
Pomógł: 7
Dołączył: 12.10.2006
Skąd: Newcastle Upon Tyne

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


Cytat(tehaha @ 10.07.2010, 13:19:09 ) *
może być plik txt to nie robi właściwie różnicy, i lepiej jednak trzymać w tablicy niż w zmiennych bo przy dużej ilości zmiennych może dojść do jakiegoś konfliktu z nazwą, ustawiony przez użytkownika język możesz zapisać do ciastek i sesji żeby ładować taki język jaki sobie ustawi lub pobrać domyślny język przeglądarki



Mozesz podac przyklad o co ci chodzi i jak bys to widzial? Dzieki


--------------------
Portfolio

Windows Vista Business SP1
DELL VOSTRO 200, Intel Core2 DUO E4600 2.4GHz, 3 GB RAM, ATI Radeon HD 2400 Pro, Screen DELL 22"

Pomogłem ci -> Kliknij "Pomógł" -> Dzięki
Go to the top of the page
+Quote Post
muk4
post
Post #7





Grupa: Zarejestrowani
Postów: 309
Pomógł: 56
Dołączył: 3.11.2006
Skąd: Gliwice

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


Polecam ten temat:
Temat: Wielojezykowosc


Cytat
Mozesz podac przyklad o co ci chodzi i jak bys to widzial? Dzieki


Robisz tablicę $lang i robisz to np tak:

[/php]$lang['pl']['FORGOT_PASSWORD'] = 'Zapomniałeś hasła?';
$lang['cz']['FORGOT_PASSWORD'] = 'ZZapomenuté heslo?';[/php]

Ten post edytował muk4 10.07.2010, 13:32:43
Go to the top of the page
+Quote Post
tehaha
post
Post #8





Grupa: Zarejestrowani
Postów: 1 748
Pomógł: 388
Dołączył: 21.08.2009
Skąd: Gdynia

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


co do formatu zapisu to może być tak jak przedstawił @muk4, tablica jest po prostu łatwiejsza w użyciu niż takie stałe i łatwiejsza w edycji gdybyś chciał to edytować z panelu lub też oddzielny plik dla każdego języku np. pl.txt, en.txt, du.txt itp. a w niej tablica:
  1. $lang = array
  2. (
  3. 'contact'=>'kontakt',
  4. 'hello user'=> 'witaj użytkowniku '
  5. )


co do reszty to możesz sprawdzać przy pomocy $_SERVER[''HTTP_ACCEPT_LANGUAGE'] - domyślny język przeglądarki, żeby od razu ustawić en, du lub pl dla użytkownika, ponadto jeżeli user dokona zmiany język możesz zapisać to u niego w ciastkach, tak więc przy odwiedzinach użytkownika sprawdzasz czy jest ustawiona zmienna sesyjna np. $_SESSION['default_lang']; jeżeli tak to ładujesz taki język, jak nie to sprawdzasz czy istnieje ciastko np. $_COOKIE['default_lang'] jeżeli tak to ładujesz taki plik językowy jaki sobie user ustawił i ustawiasz w sesji, jeżeli nie ma ciastka to sprawdzasz $_SERVER[''HTTP_ACCEPT_LANGUAGE'] aby pokazać mu język taki jaką ma przeglądarkę i ustawiasz w sesji, a jak tego też nie ma to ładujesz domyślnie pl i wrzucasz go do sesji, tak abyś nie sprawdzał tego wszystkiego przy każdym przeładowaniu tylko za pierwszym razem
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: 22.08.2025 - 05:37