![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 34 Pomógł: 0 Dołączył: 6.01.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Robie strone dwujezyczna i mam pewien problem. Parametr jezyka przesylam przez URL przy pomocy $_GET, wartosci przypisuje do sesji i cos tam sie dzieje. Mam dwa linki do zmiany jezyka. Do tworznia tych linkow wykorzystuje $_SERVER['REQUEST_URI'] i dodaje "identyfikator" jeszyka. Caly problem w tym ze klikajac w link dodawany jest ident. jezyka tyle razy ile bylo klikniec, bo $_SERVER['REQUEST_URI'] przechowuje caly poprzedni link. Czy da sie to zrobic tak zeby nie powtadzalo mi np index.php?lang=pl?lang=pl?lang=eng itd? Myslalem nad odpowiednim filtrowaniu wartosci $_SERVER['REQUEST_URI'] ale moze jest jakis prostrzy sposob? A oto kawalek kodu: to mi sprawdza i ustawia wartosc sesji
to link do zmiany
Z gory dzieki za pokoc. Pozdro |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 439 Pomógł: 21 Dołączył: 28.06.2007 Skąd: Bielsko-Biała Ostrzeżenie: (0%) ![]() ![]() |
Kod if(!isset($_SESSION['jezyk'])) zmień to na to:$_SESSION['jezyk']='pl'; else { if(isset($_GET['lang']) && ($_GET['lang']=='pl' || $_GET['lang']=='eng')) $_SESSION['jezyk']=$_GET['lang']; else $_SESSION['jezyk']='pl'; } Kod if(!isset($_GET['lang'])){ $_SESSION['jezyk']='pl';} //tu podaj jeżyk domyślny else{ if($_GET['lang']=='pl' || $_GET['lang']=='eng') { $_SESSION['jezyk']=$_GET['lang']; } else $_SESSION['jezyk']='pl'; } taka mała zmiana kosmetyczna a pomoże.... co do problemu... Kod $jezyk = $_SERVER['request_uri']; $urlquery = parse_url($jezyk); $ile = substr_count($urlquery['query'],'lang='); if ($ile != 0){ $query = preg_replace('/lang=[pleng]{2,3}/','',$urlquery['query']); $adres = $urlquery['path']."?".$query; } najpierw sprawdza czy w adresie w ogóle są jakieś zmienne co do języka potem jeśli są to zmienia wszystkie(nawet jeśli ich np. 5) lang=pl i lang=eng i dalej juz proste:P Daje jakieś 75% że nie działa... bo ja mam pecha do skryptów... zawsze coś zepsuje ![]() ![]() ![]() -------------------- "Na przykład zmiennej $jestem_najlepszy przypisujemy wartość logiczną TRUE"
Ja: użyj funkcji[...] Grins: mów normalnie do mnie a nie po polsku Ja: normalnie to znaczy jak? Grins: No w PHP... inaczej mój parser ledwo kuma:) |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 34 Pomógł: 0 Dołączył: 6.01.2007 Ostrzeżenie: (0%) ![]() ![]() |
wlasnie w podobny sposob chcialem kombinowac z tym
![]() ![]() Pozdro i Wesloych Swiat ![]() |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 850 Pomógł: 120 Dołączył: 15.02.2007 Skąd: Łódź Ostrzeżenie: (10%) ![]() ![]() |
A nie możesz tak:
<?php <a href=?lang=pl>pl</a> ?> Ten post edytował Lion_87 22.12.2007, 11:26:21 |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 34 Pomógł: 0 Dołączył: 6.01.2007 Ostrzeżenie: (0%) ![]() ![]() |
mialem tak ale jesli mam strone i kilka paramaetrow w adresie np. index.php?id=1&x=3&y=2 itd i gdy uzywalem
to po przeladowaniu strony link moj wygladal tak: index.php?lang=pl a pozostale parametry znikaly. a mi chodzi o to zeby wartoscie x,y,id itd nadal byly w linku. |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 850 Pomógł: 120 Dołączył: 15.02.2007 Skąd: Łódź Ostrzeżenie: (10%) ![]() ![]() |
TO MOŻE JEDNAK TAK:
<? $stronaab=getenv(REQUEST_URI); $stronaab = str_replace ("?lang=pl", "", $stronaab); $stronaab = str_replace ("&lang=pl", "", $stronaab); $stronaab = stripslashes ($stronaab); $stronaab = strpos($stronaab, "?"); if ($stronaab == 0) { $plus="?lang=pl"; echo "<a href=$stronaab$plus>bbbbbb</a>"; } else { $plus="&lang=pl"; $stronaab=getenv(REQUEST_URI); $stronaab = str_replace ("?lang=pl", "", $stronaab); $stronaab = str_replace ("&lang=pl", "", $stronaab); $stronaab = stripslashes ($stronaab); echo "<a href=$stronaab$plus>aaaaa</a>"; } ?> Ten post edytował Lion_87 22.12.2007, 14:54:13 |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 34 Pomógł: 0 Dołączył: 6.01.2007 Ostrzeżenie: (0%) ![]() ![]() |
okej czyli rozumiem ze nie ma banalnego sposobu na rozwiazanie tego tylko trzeba pokombinowac
![]() Pozdro i Wesolych Swiat |
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 278 Pomógł: 10 Dołączył: 13.02.2007 Skąd: Rybnik Ostrzeżenie: (0%) ![]() ![]() |
Nie jestem pewien, ale może
rozwiąze sprawę. A Request_uri został w spokoju przy linkach ![]() -------------------- Nawet, jeżeli nie jesteś zainteresowany usługami IT ani outsourcingiem, a Twoją pasją jest programowanie - zobacz naszą stronę. Piszemy dużo fajnych use-caseów, jak podchodzimy do tematu programowania dla naszych klientów. A tak na co dzień tworzymy budujemy mvp oraz tworzymy platformę b2b.
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 17:37 |