Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Dziwny problem z include, sesjami i echo
Cod
post
Post #1





Grupa: Zarejestrowani
Postów: 81
Pomógł: 0
Dołączył: 20.03.2003
Skąd: Warszawa

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


Nieczęsto proszę kogoś na forum o pomoc, bo zawsze staram się rozwiązywać problemy sam. Z tym jednak nie mogę sobie poradzić. Nie mam zupełnie pojęcia o co chodzi.

Zacząłem tworzyć stronę, która będzie dostępna w kilku językach. Gość już na stronie głównej może wybrać sobie, w jakim języku witryna ma być wyświetlana. Klikając w odpowiedni link, tworzy zmienną $HTTP_SESSION_VARS["lang"], zawierającą wiadomość, o tym, jaki gość wybrał język. W skrypcie strony, na samym początku sprawdzane jest, czy zmienna istnieje. Jeśli nie, to przypisana jest jej wartość języka angielskiego. Następnie includowany jest plik, zawierający deklarację tablicy $lang, w której pod odpowiednimi indeksami zawarte będą przetłumaczone na dany język teksty.

To tyle tytułem wstępu. Poniżej wklejam fragment kodu, który ma wyświetlić różne tytuły dla różnych języków:

header.php
  1. <?php
  2. if(isset($HTTP_GET_VARS[&#092;"lang\"])) $HTTP_SESSION_VARS[\"lang\"]=$HTTP_GET_VARS[\"lang\"];
  3. else $HTTP_SESSION_VARS[&#092;"lang\"]=\"english\";
  4. $langdir=&#092;"lang/\".$HTTP_SESSION_VARS[\"lang\"].\"/lang_main.php\";
  5. include($langdir);
  6. // .....
  7. echo &#092;"<title>footbagnews.com :: \".$lang[\"title\"].\"</title>\";
  8. ?>


lang/polski/lang_main.php
  1. <?php
  2. $lang[&#092;"title\"]=\"zo&para;ka, footbag, newsy, informacje, wydarzenia, triki, gracze, filmy\";
  3. ?>


lang/english/lang_main.php
  1. <?php
  2. $lang[&#092;"title\"]=\"footbag, hacky sack, news, events, tricks, moves, players, videos\";
  3. ?>


Przy pierwszym uruchomieniu strony, kiedy jeszcze sesja nie jest ustawiona, skrypt działa poprawnie i wyświetla angielski tekst tytułu. Kiedy jednak ktoś kliknie w link jakiegoś języka, wyświetlana jest tylko pierwsza litera tekstu z zaincludowanej zmiennej. Nie mam pojęcia, o co w tym chodzi.

Głupi problem i zapewne prosty w rozwiązaniu, ale nie pozwala mi się ruszyć dalej. Proszę o pomoc.

Link do tej stronki: http://www.footbag.p2.pl/footbagnews
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
tsharek
post
Post #2





Grupa: Zarejestrowani
Postów: 300
Pomógł: 1
Dołączył: 22.09.2003
Skąd: Czeladź

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


mogę dokładnie potwierdzić że to co pisał DeyV jest prawdą. pare razy już zdażała mi się taka sytuacja jak właśnie był register globals na on. wydaje mi się że php wtedy miesza coś z typami. wtedy dokładnie pojawia się 1 litera danego stringu.
Go to the top of the page
+Quote Post

Posty w temacie


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: 11.10.2025 - 06:01