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 (IMG:style_emoticons/default/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 (IMG:style_emoticons/default/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
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 26.12.2025 - 05:07