[PHP]Zmiana języka na stronie |
[PHP]Zmiana języka na stronie |
23.09.2011, 17:35:07
Post
#1
|
|
Grupa: Zarejestrowani Postów: 213 Pomógł: 0 Dołączył: 7.07.2011 Ostrzeżenie: (0%) |
Witam.
Napisałem stronę na której każdy link wygląda następująco: http://mojanazwa.pl/?strona=index.php I każde słówko jest zawarte w katalogu: ./lang/danyjezyk.php Np. ./lang/polski.php A w plikach jest implementowane poprzez: <?php echo $lang['jakis_tam_element']; ?> I tutaj pada moje pytanie, nie mam żadnych pomysłów ani nic na to jak można by zrobić aby wybierać sobie na stronie dany język. Dziękuję z góry za pomoc, Pozdrawiam. |
|
|
23.09.2011, 17:42:25
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 568 Pomógł: 192 Dołączył: 7.03.2005 Skąd: Warszawa Ostrzeżenie: (0%) |
Albo pobierasz z get język czyli jak masz url index.php?jezyk=pl albo zapamietujesz w sesji i poibierasz je po odświeżeniu,.
Ten post edytował potreb 23.09.2011, 17:44:12 -------------------- |
|
|
23.09.2011, 17:50:41
Post
#3
|
|
Grupa: Zarejestrowani Postów: 213 Pomógł: 0 Dołączył: 7.07.2011 Ostrzeżenie: (0%) |
Pisałem już jak wygląda mój link, nie index.php samo, tylko index.php?page=rejestracja.php, każdy kod strony mam w mysql i GET mi je odczytuje.
Co do sesji, nie rozumiem o co chodzi? Tzn. że jak? |
|
|
23.09.2011, 17:53:05
Post
#4
|
|
Grupa: Administratorzy Postów: 1 552 Pomógł: 211 Dołączył: 7.07.2009 Skąd: NJ |
Najprościej, stawiasz warunki if $_SESSION['lang'] == "PL" podpinaj plik lang/polski.php jak "DE" to podpinaj plik lang/niemiecki.php itd.
|
|
|
23.09.2011, 18:01:11
Post
#5
|
|
Grupa: Zarejestrowani Postów: 4 298 Pomógł: 447 Dołączył: 16.11.2006 Ostrzeżenie: (0%) |
Pisałem już jak wygląda mój link, nie index.php samo, tylko index.php?page=rejestracja.php, każdy kod strony mam w mysql i GET mi je odczytuje. A co to ma do rzeczy? lang=pl to tylko kolejny parametr w adresie. Trzymanie informacji o języku w sesji jest mało przyjazne dla wyszukiwarek. -------------------- Nie udzielam pomocy poprzez PW i nie mam GG.
Niektóre języki programowania, na przykład C# są znane z niezwykłej przenośności (kompatybilność ze wszystkimi wersjami Visty jest wiele warta). |
|
|
23.09.2011, 22:31:16
Post
#6
|
|
Grupa: Zarejestrowani Postów: 19 Pomógł: 0 Dołączył: 7.09.2011 Ostrzeżenie: (0%) |
O ile rozumiem, to chodzi ci o to, żeby po naciśnięciu na jakiś botton załadować odpowiedni plik.
<input type="submit" name="polski" value="POLSKI"> <input type="submit" name="niemiecki" value="NIEMIECKI"> itd...
Powód edycji: [strife]: [strife]: Dodanie kolorowania składni :)
|
|
|
23.09.2011, 22:37:27
Post
#7
|
|
Grupa: Przyjaciele php.pl Postów: 2 605 Pomógł: 96 Dołączył: 22.10.2004 Skąd: UK Ostrzeżenie: (0%) |
@mikiz65 - tylko lepszą praktyką jeśli już było by robienie przekierowania poprzez php, mam na myśli użycia odpowiedniego nagłówka jak (nie pamiętam dokładnie, ale chyba stosowało się nagłowek 302 w takich przypadkach hm):
Dodatkowo jeżeli chodzi o wersję językowe to praktyka jest taka, że lepiej jest zrobić wersję językowe na podstawie adresu URL (jak napisał ktoś wyżej jest to lepsze dla wyszukiwarek) np. - site.com/pl/jakis-artykul - site.com/en/some-article itd. A technicznie sprawa jest prosta, zmienne superglobalne w php $_GET i po krzyku. -------------------- Najczęstsze błędy | Jak poprawnie zadać pytanie? | Serwer PHP - od czego zacząć?
SQL Injection | Hashowanie haseł | Jak działają sesje, przykłady ___ The world is yours ... |
|
|
24.09.2011, 10:17:30
Post
#8
|
|
Grupa: Zarejestrowani Postów: 4 298 Pomógł: 447 Dołączył: 16.11.2006 Ostrzeżenie: (0%) |
Plus tzw. "przyjazne linki", aby właśnie wyglądało to tak:
Cytat - site.com/pl/jakis-artykul
- site.com/en/some-article -------------------- Nie udzielam pomocy poprzez PW i nie mam GG.
Niektóre języki programowania, na przykład C# są znane z niezwykłej przenośności (kompatybilność ze wszystkimi wersjami Visty jest wiele warta). |
|
|
24.09.2011, 21:44:31
Post
#9
|
|
Grupa: Zarejestrowani Postów: 213 Pomógł: 0 Dołączył: 7.07.2011 Ostrzeżenie: (0%) |
Najlepiej to wolałbym żeby język sam się dobierał do języka przeglądarki, i nie był na GET'ach, POST'ach, SES'jach czy nie wiadomo jeszcze czym..
Mam przeglądarkę po angielsku - Wczytuje mi się język po angielsku. Jeśli nie ma języka mojej przeglądarki, to wczytuje mi domyślny, np. Angielski A jeśli sam dobrowolnie chcę sobie zmienić język, to wybieram z listy dany język. Tylko nie ogarniam jak to zrobić :| Na Get'ach też by mogło być, ale nie wyobrażam sobie tego w 2x zmiennych w adresie, jak to zrobić że po kliku w daną zakładkę która ma już ustanowiony link np index.php?page=rejestracja żeby dodało język którego aktualnie używam, np. index.php?page=rejestracja&lang=pl |
|
|
24.09.2011, 22:24:12
Post
#10
|
|
Grupa: Zarejestrowani Postów: 35 Pomógł: 7 Dołączył: 18.02.2007 Ostrzeżenie: (0%) |
Tylko że z przeglądarką wygląda to ciut inaczej - jest to aplikacja okienkowa, która może korzystać z windows api i tam sobie pobierać różne lokalizację ze zmiennych systemowych.
Jeśli chodzi o twój problem, to ... najprostszym rozwiązaniem są sesje. W sesji trzymasz ID języka i później na podstawie tego manewrujesz sobie i nie musisz się martwić że po drodze możesz zgubić parametr w GET. A jeśli sobie czegoś nie wyobrażasz/nie chcesz się nauczyć, to daj sobie spokój. Nikt Ci nie będzie pisał za darmo gotowca, bo Ty nie chcesz się nauczyć a chcesz sobie coś tam dopisać. |
|
|
24.09.2011, 22:34:06
Post
#11
|
|
Grupa: Zarejestrowani Postów: 213 Pomógł: 0 Dołączył: 7.07.2011 Ostrzeżenie: (0%) |
@UP:
Po 1. Nigdzie nie pisałem że proszę o gotowy skrypt tylko o POMYSŁ. Po 2. To jak wyjaśnisz ten skrypt: <script type="text/javascript"> <!-- if (navigator.appName == 'Netscape') var language = navigator.language; else var language = navigator.browserLanguage; if (language.indexOf('pl') > -1) document.location.href = 'pl'; else document.location.href = 'en'; --> </script> Po 3. Teraz głównie chodzi mi o to jak zlokalizować czyiś język, bo skąd niby sesja będzie wiedzieć jaki język komuś pobrać z folderu? |
|
|
24.09.2011, 22:39:34
Post
#12
|
|
Grupa: Zarejestrowani Postów: 1 568 Pomógł: 192 Dołączył: 7.03.2005 Skąd: Warszawa Ostrzeżenie: (0%) |
-------------------- |
|
|
24.09.2011, 23:05:18
Post
#13
|
|
Grupa: Zarejestrowani Postów: 213 Pomógł: 0 Dołączył: 7.07.2011 Ostrzeżenie: (0%) |
@UP:
Niezwykle mi pomogłeś! Dzięki ci wielkie! Temat do zamknięcia. Pozdrawiam. @EDIT: I żeby nie było, szukałem tego w necie jakiś czas czy się da w php i bez skutku, może źle pytałem google'a czy nie wiem. Inaczej bym nie pytał bez szukania ;-) Ten post edytował Weles 24.09.2011, 23:06:14 |
|
|
Wersja Lo-Fi | Aktualny czas: 28.04.2024 - 04:49 |