Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Wartość z select'a zapisana do Cookie
maciek257
post
Post #1





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 5.08.2013

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


Witam,

Chciałbym uruchomić 2-języczną stronę z plikami tłumaczeń. Nazwa pliku tłumaczeń z którego odbierany będzie array zapisywana jest w cookie.

Oto co zapisałem przed <html>:

  1. <?php
  2. $_COOKIE["jezyk"] = "PL";
  3. setcookie("jezyk", "PL", time()+31536000, "/");
  4.  
  5. $lang = $_COOKIE['jezyk'];
  6.  
  7. if(!isset($lang))
  8. $lang='PL';
  9. ?>
  10. <?php
  11. include("lang/$lang.php");
  12. [...]?>


A w stopce strony znajduje się select:

  1. <form method="post" action="index.php">
  2. <select name="language" onchange="this.form.submit()">
  3. <option value="PL">Polski</option>
  4. <option value="EN">English</option>
  5. </form>

  1. <?php
  2. $language = $_POST['language'];
  3. ?>


Moje pytanie: Co zrobić, aby powyższa zmienna "$language" z formularza trafiała w miejsce wartości Cookie (teraz jest po prostu "PL") . Dokładniej: wybieram z select "English" formularz się wysyła, strona przeładowuje, do cookie trafia zmienna, która powoduje zmianę linku do pliku tłumaczeń.

Będę bardzo wdzięczny za podpowiedzi.

Pozdrawiam smile.gif
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
Szymas
post
Post #2





Grupa: Zarejestrowani
Postów: 53
Pomógł: 5
Dołączył: 27.11.2013
Skąd: Morąg

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


Użyj funkcji switch(). Będzie to wyglądało mniej więcej tak:
  1. switch ($language)
  2. {
  3. case 'PL' :
  4. {
  5. setcookie("jezyk", "PL", time()+31536000, "/");
  6. header("Location: index.php");
  7. break;
  8. }
  9. case 'EN' :
  10. {
  11. setcookie("jezyk", "EN", time()+31536000, "/");
  12. header("Location: index.php");
  13. break;
  14. }
  15. }


Przepraszam jeżeli są jakieś błędy. Piszę na szybko ze szkoły smile.gif

Ten post edytował Szymas 3.12.2013, 12:04:50
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.08.2025 - 06:00