Wpis z mikrobloga

Mireczki,

Prośba o pomoc, będziesz miał do portfolio xD

Zamieniam stronę onepage na taką z podstronami, mam problem z tłumaczeniem na języki.
Tłumaczenia są pobierane z pliku txt. Języków jest 3 +PL

Ja jestem tylko prostym grafikiem więc cannot into php.

Menu jest osobnym plikiem php includowanym do każdej strony
Kod na przycisku w menu do wersji językowej:

php $translate - __('RU'); ?>
Kod zwykłego przycisku:

php $translate - __('Strona'); ?>
I tutaj powinno to jakoś sprawdzać czy jest język, i jak jest to dopisywać ?lang=en do adresu

Takie coś odpowiada za sprawdzanie języka, jest to w pliku layout.php też includowanym do każdej strony:
php
$fileversion = 24;
requireonce('lang/class.translation.php');

if(isset($
GET['lang']))
$translate = new Translator($_GET['lang']);
else
$translate = new Translator('pl');
?

Mój pomysł jest taki, na chłopski rozum.
Niech po naciśnięciu przycisku z "flagą" zmienia się jakaś zmienna globalna, potem jest ona odczytywana za każdym razem i na jej podstawie jest wybierane tłumaczenie. Wszystko działało jak było na jednej stronie, teraz podzieliłem i działa tylko główna, reszcie trzeba dopisywać ?lang=en do adresu.

Na pewno nie jest to zbyt jasne ale może ktoś coś :D

#php
  • 8
  • Odpowiedz
@nastynas: ja zrobiłbym tak: klikasz na flagę, ustawiana jest sesja $SESSION['lang'] = 'pl'; a na każdej podstronie sprawdzana jest zawartość sesji, tzn. if($SESSIOn['lang']=='en') (en, pl, de, fr itd.) to załadować ma konkretny język ;)
  • Odpowiedz
@nastynas: Nie wiem jak ta Twoja klasa wygląda, co robi, jak działa. GET to to co wpisujesz w pasku adresu. czyli np. domena.pl/index.php?lang=en itd. sesja jest natomiast niewidoczna ;) czyli robisz coś w stylu:

index.php?lang=en
index.php?lang=pl
index.php?lang=de

na każdej podstronie robisz:
if($GET['lang']=='en') {
$
SESSION['lang'] = 'en';
//ładowanie języka angielskiego
} elseif($GET['']) {
$
SESSION['lang'] = 'pl';
//ładowanie języka polskiego
} else {
$_SESSION['lang'] = 'de';
//ładowanie języka niemieckiego
  • Odpowiedz
@variable: cumplu, dzięki ale nic nie zrozumiałem :D
Mój główny problem to plik php z menu, on jakby nie wie że strona jest w wersji językowej i linkuje dalej do stron nie dodając ?lang=en.

Pobrałem taki kod:
php

// sprawdzam, czy mam język w zmiennej podesłany [ czy user chce zmienić ]
if ( isset( $GET['lang'] ) )
{
// jak mam, to sprawdzam, czy jest dobry język podany
if
  • Odpowiedz
@nastynas:

na każdej podstronie robisz:

if($GET['lang']=='en') {

$SESSION['lang'] = 'en';

//ładowanie języka angielskiego

} elseif($GET['']) {

$SESSION['lang'] = 'pl';

//ładowanie języka polskiego

} else {

$SESSION['lang'] = 'de';

//ładowanie języka niemieckiego

}


Eeeeee....

Pobrałem taki kod:

php

// sprawdzam, czy mam język w zmiennej podesłany [ czy user chce zmienić ]

if ( isset( $GET['lang'] ) )

{

// jak mam, to sprawdzam, czy jest dobry język podany

if (
  • Odpowiedz