Napisałem sobie taki skrypt do obsługi języków:
include_once('config/config.php'); $_SESSION['lang'] = $_GET['lang']; } require_once('lang/class.php'); $lng = new lang(); $lng->lang = $_SESSION['lang']; $lng->Start();
plik config/config.php
$live_cookie = 3600; $name_domain = 'http://domena.pl'; $_SESSION['live'] = $time;
Wciskam przycisk flagi niemieckiej, działa pięknie, wybieram cokolwiek z menu i... Znów wchodzi mi język polski.
Niestety wygląda na to, że pomimo braku wartości $_GET['lang'], zmienna $_SESSION['lang'] staje się pusta. Dlaczego? Myślę nad tym od dwóch dni i nic nie mogę wymyśleć.
Plik lang/class.php został zbudowany tak, żeby nawet nie wybierając żadnego języka (gdy $_SESSION['lang'] jest pusta) załadują się zmienne języka polskiego.
class lang { public function __set($nazwa, $wartosc) { $this->$nazwa = $wartosc; } public $lng; public function Start() { include_once('pl.php'); $pl = $lng; if(!$a){ $abc = $pl; } else { include_once($this->lang.'.php'); $ln = $lng; } $this->lng = $abc; // echo $_SERVER["DOCUMENT_ROOT"].'/lang/'.$this->lang.'.php'; } }
Będę wdzięczny za jakąkolwiek pomoc.
Pozdrawiam.