Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Wielojęzyczność. Brak wartości w dołączonej funkcji, Brak wartości zmiennej w funkcji dołączanej z innego pliku.
kilab
post
Post #1





Grupa: Zarejestrowani
Postów: 180
Pomógł: 19
Dołączył: 4.11.2007

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


Witam, mam problem ze zmiennymi, a raczej ich wartościami. Otóż tworzę sobie portal, pozwoliłem wykorzystać wielojęzyczność, która polega na pobraniu z adresu wartości zmiennej i za pomocą warunków załadowanie odpowiedniego pliku z językiem. Np, adres.pl/pl - ładuje plik /inc/pl.inc.php i analogicznie z innymi językami. poszczególne podstrony dołączam za pomocą funkcji include, tak więc adres.pl/pl/forum wskazuje na plik - /forum.php, w którym znajduje się forum, jednak plik ten wykorzystuje funkcje, które przechowywane są w innym pliku - /inc/forum.inc.php. Oczywiście plik z językiem jest dołączany na samym początku. Wydaje mi się więc, że zmienne z tego pliku winny być widoczne w całym skrypcie, we wszystkich plikach dołączanych również. Jednak zmienne, które wykorzystuje do wyświetlania danego tekstu w odpowiednim języku działają na adres.pl/pl/forum, ale w funkcji, która jest wywoływana w tym pliku, a zapisana w /inc/forum.inc.php nie działa. Dokładnie - nie zwraca żadnej wartości. Jakoś ciężko jest mi znaleźć informacje na ten temat. Domyślam się, że chodzi tutaj o zasięg zmiennych, jednak nie wiele jestem w stanie zrobić, aby poprawić tego fanta  (IMG:style_emoticons/default/sadsmiley02.gif) Czekam na jakieś sugestie i pomysły dlaczego dzieje się tak, że w funkcjach znajdujących się w plikach dołączanych, zmienne nie 'docierają' i ew. pomoc w poprawie  (IMG:style_emoticons/default/snitch.gif)

Wybaczcie moją ewentualną niewyraźną wypowiedź w tonie bełkotnym, ale pora już późna i spracowany jestem. Jeśli potrzebujecie więcej informacji, piszcie  (IMG:style_emoticons/default/tongue.gif)

Ten post edytował kilab 25.11.2009, 23:36:26
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
taro
post
Post #2





Grupa: Zarejestrowani
Postów: 58
Pomógł: 5
Dołączył: 12.12.2008

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


Może nie do końca odpowiedź na Twoje pytanie, ale polecam:

'HTTP_ACCEPT_LANGUAGE' Contents of the Accept-Language: header from the current request, if there is one. Example: 'en'.

http://php.net/manual/en/reserved.variables.server.phpMoże to się okazać lepszym rozwiązaniem.

Masz jeszcze wpis dalys at chokladboll dot se

  1. <?php
  2. function detectlanguage() {
  3. $langcode = explode(";", $_SERVER['HTTP_ACCEPT_LANGUAGE']);
  4. $langcode = explode(",", $langcode['0']);
  5. return $langcode['0'];
  6. }
  7.  
  8. $language = detectlanguage();
  9.  
  10. echo "You have chosen $language as your language in your web browser.";
  11. ?>



Pozdrawiam.
Go to the top of the page
+Quote Post
kilab
post
Post #3





Grupa: Zarejestrowani
Postów: 180
Pomógł: 19
Dołączył: 4.11.2007

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


Dzięki, może się przydać przy następnych lekcjach (IMG:style_emoticons/default/smile.gif)

Ale teraz jednak problem z tym zasięgiem zmiennych  (IMG:style_emoticons/default/dry.gif)

Najbardziej mnie interesuje to, czy jeśli na początku skryptu dołączę plik ze zadeklarowanymi zmiennymi to będą one dostępne w innych plikach dołączanych do skryptu(tak, będą, ale..) i czy są jakieś limitu zagłębiania się w tych plikach.

Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 24.08.2025 - 04:53