Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Zmiana jeżyku na stronie.
Forum PHP.pl > Forum > PHP
sebian
Witam. Mam problem z rozwiazaniem dwujęzyczności na stronie.
mam sobie funkcję:

  1. function change_lang()
  2. {
  3.  
  4. $_SESSION["lang"] = (isset($_GET['lang']) && !empty($_GET['lang'])) ? $_GET['lang'] : 'pl';
  5.  
  6. if (isset($_GET['lang']))
  7. {
  8. $file = 'languages/'.$_SESSION['lang'].'.php';
  9. require_once($file);
  10.  
  11. }
  12. else
  13. {
  14. require_once('languages/pl.php');
  15. }
  16.  
  17. }


Którą wywołuję:

  1. function lang()
  2. {
  3.  
  4. <li class="no_bg"><a href="index?lang=pl">Polish</a></li>
  5. <li class="no_bg"><a href="index?lang=en">English</a></li>
  6. }


pl.php czy en.php wyglada tak:
  1. <?php
  2.  
  3. $lang = array(
  4. 1 => 'witaj',
  5. 2 => 'na',
  6. 3 => 'stronie'
  7. );
  8.  
  9. ?>


I w koncu przyklad kody w ktorym miał by sie pokazać tekst w zależności od zaincludowanego pliku:
  1. function login_menu()
  2. {
  3. <span class="log_as_left"><a href="index.php?show=wyswietl_form_rej"><?php echo $lang[1]; ?></a></span>
  4. }



Oczywiście nie wyświetla zmiennej $lang[1] w ogóle, kwestia czy to błąd gdzieś w kodzie czy problem z przekazaniem zmiennych miedzy funkcjami? Pomysły?
To są fragmenty funkcji aby nie zaśmiecać postu.

PS. dodam ze w sesji poprawnie rejestruje sie zmienna pobierana getem odpowiedzialna za includowanie pliku jezykowego.
nospor
manual -> zasięg zmiennych

I włącz wyświetlanie wszystkich błędów to zobaczysz to i owo
sebian
Errory włączone
  1. ini_set( 'display_errors', 'On' );
  2. error_reporting( E_ALL );


A mojego problemu nie załatwiłem poprzez zmienne globalne ale przez statyczne w klasach
  1. <?php
  2. class lang{
  3. static $reg = "It Works";
  4. }
  5.  
  6.  
  7. ?>


Na które natrafiłem po twojej podpowiedzi w dziale przedszkole TUTAJ.
Tak czy siak pomogłeś znowu smile.gif Dziek i do usłyszenia smile.gif
!*!
Obadaj pierw jak tworzy się funkcje w PHP.
Kod który przedstawiłeś jest co najmniej bez sensu.

http://www.webtips.pl/topic/33729-php-wiel...a-strona-w-php/
sebian
A co masz tam takiego bez sensu? Staram się zrozumieć twoją uwagę ale nie potrafię? smile.gif
!*!
Przeczytałeś linki które podałem? Np. GET może być wszystkim?
sebian
Dobra, nadal nie czaję, to że powyższy kod jest bez sensu to nie znaczy ze tak go mam napisanego. To raz, dwa nie chodziło w tym temacie o to jak się pisze funkcje (kod był przykladem, funkcja i tak nie działała prawidłowo bo nie miał prawa i wiem o tym) tylko jak przekazać zmienne miedzy funkcjami bo własnie to nie działało. I dzieki uprzejmośći "puchatka" trafiłem na rozwiązanie mojego problemu. I o czym tu dalej dyskutować?! OT i nic wiecej jak dlamnie.

SOLVED!!! Do zamknięcia.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.