Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [HTML][JavaScript]Zmiana języka w URLu, php-owe "$_GET"
ZaXaZ
post
Post #1





Grupa: Zarejestrowani
Postów: 285
Pomógł: 18
Dołączył: 30.01.2014
Skąd: <?=$_GET['city']?>

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


Ostatni temat jaki przeczytałem to ten:
http://forum.php.pl/index.php?showtopic=143153
A kilka już przeszukałem (wraz z sub-tematami) jednak nie znalazłem nic co spełni mój problem (bądź za słabo JS umiem bo nadal jestem w nauce podstaw).

Chce zmieniać język strony zależnie od wybranego:
  1. <select onchange="changeLang();">
  2. <option value="en" selected="selected">English</option>
  3. <option value="pl">Polish (Polski)</option>


Jednak nie wiem jak zrobić funkcję JS która by pobierała obecny adres,
i jeśli niema lang to doda domyślny czyli ?lang=en.
A jeśli jest to zamieni na wybrany, proszę o wskazówki (zastosuję switch).

Ten post edytował ZaXaZ 6.09.2014, 17:12:20
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
trueblue
post
Post #2





Grupa: Zarejestrowani
Postów: 6 807
Pomógł: 1828
Dołączył: 11.03.2014

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


W kodzie brakuje jeszcze funkcji GetParameter.

Jeśli potrzebujesz wyłuskać i zmienić jeden parametr, to chyba tak będzie prościej:
  1. <select id="Language" onchange="ChangeLanguage(this.value);" >
  2. <option class="SelectItem" value="en" selected="selected" >English</option>
  3. <option class="SelectItem" value="de" >Deutsch</option>
  4. <option class="SelectItem" value="ms" >Melayu</option>
  5. <option class="SelectItem" value="pt" >Portugu?s</option>
  6. function ChangeLanguage(lang){
  7. var url=window.location.href;
  8. var regex=new RegExp("[\\?&]lang=([^&#]*)");
  9. var results=regex.exec(url);
  10. if(results!=null){
  11. var url=url.split('lang='+results[1])
  12. window.location = url[0]+'lang='+lang+url[1];
  13. }
  14. else
  15. window.location = url+(url.indexOf('?')>-1?'&':'?')+'lang='+lang;
  16. }

Nie jest to doskonałe rozwiązanie, bo np. przy braku lang w URL nie uwzględnia możliwości istnienia hashu (#), ale wydaje mi się, że w Twoim przypadku sprawdzi się bez problemów.

Ten post edytował trueblue 7.09.2014, 07:51:47
Go to the top of the page
+Quote Post

Posty w temacie
- ZaXaZ   [HTML][JavaScript]Zmiana języka w URLu   6.09.2014, 17:09:43
- - trueblue   Chcesz aby podczas nawigacji po stronie cały czas ...   6.09.2014, 17:14:06
|- - ZaXaZ   Cytat(trueblue @ 6.09.2014, 18:14:06 ...   6.09.2014, 17:19:12
- - trueblue   Rozumiem. Ale w przypadku bez wersji językowej w ...   6.09.2014, 17:30:15
- - pedro84   Cytat(trueblue @ 6.09.2014, 18:14:06 ...   6.09.2014, 17:43:13
|- - trueblue   Cytat(pedro84 @ 6.09.2014, 18:43:13 )...   6.09.2014, 18:04:28
|- - pedro84   Cytat(trueblue @ 6.09.2014, 19:04:28 ...   6.09.2014, 18:17:56
|- - trueblue   Cytat(pedro84 @ 6.09.2014, 19:17:56 )...   6.09.2014, 18:29:40
|- - pedro84   Cytat(trueblue @ 6.09.2014, 19:29:40 ...   6.09.2014, 19:03:43
- - Janusz1200   Może nie na temat, a może się przyda: ja obsługuję...   6.09.2014, 19:05:58
|- - pedro84   Cytat(Janusz1200 @ 6.09.2014, 20:05:5...   6.09.2014, 19:08:57
- - trueblue   Cytat(pedro84 @ 6.09.2014, 20:03:43 )...   6.09.2014, 19:21:06
|- - pedro84   Cytat(trueblue @ 6.09.2014, 20:21:06 ...   6.09.2014, 19:25:55
- - Janusz1200   @Pedro, co to jest slug? Ja mam tak (aplikację pi...   6.09.2014, 19:30:26
|- - pedro84   Cytat(Janusz1200 @ 6.09.2014, 20:30:2...   6.09.2014, 20:43:20
- - Janusz1200   @Pedro, thx   6.09.2014, 22:31:53
- - ZaXaZ   Cytat(pedro84)Ale dlaczego Ty sobie tego nie spraw...   7.09.2014, 02:00:28
- - trueblue   W kodzie brakuje jeszcze funkcji GetParameter. Je...   7.09.2014, 07:51:19
|- - ZaXaZ   Cytat(trueblue @ 7.09.2014, 08:51:19 ...   7.09.2014, 11:53:29
- - trueblue   Powinieneś to robić po stronie PHP, tzn. generować...   7.09.2014, 12:19:31


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: 14.10.2025 - 06:12