Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> cookies, wersja strony
herhor67
post
Post #1





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 21.10.2014

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


Witam,
otóż jakiś czas temu pobrałem pewien CMS (nazwa nie ma znaczenia), a potem na jego podstawie zrobiłem uproszczoną wersję -stronę mobilną.
No i chciałem zrobić coś takiego:
Po wejściu w jedną z tych stron, skrypt sprawdzaczy istnieje plik cookie, jeżeli tak, to jeżeli wartość jest np. "mobile", to przekierowuje na mobilną wersję, jeżeli np. "classic" to na główną.
Jeżeli pliku cookie nie ma, sprawdza z jakiego urządzenia korzysta użyszkodnik i przekierowuje na odpowiednią.
Wydaje się proste, męczyłem się kilka godzin i nie wymęczyłem sad.gif
Oto co napisałem:
Strona główna zawiera:
  1. $ver = $_COOKIE['wersja']; //pobranie do zmiennej warto@ci cookie
  2. include("m/user_agent.php"); //zaincludowanie strony sprawdzajacej urzadzenie
  3.  
  4. if($ver == "mobile") //czy cookie zawiera "mobile"
  5.  {
  6.   header('Location: m/?p=Home'); //przekierowanie na stronę mobilną
  7.  }
  8.  
  9. if(empty($ver)) //jeżeli cookie brak
  10.  {
  11.   if($mobile == 1) //sprawdza czy wykryto telefon/tablet
  12.    {
  13.     header('Location: m/?p=Home'); //przekierowanie na mobilną
  14.    }
  15. }


Strona mobilna:
  1. $ver = $_COOKIE['wersja'];
  2. include("user_agent.php");
  3.  
  4. if($ver == "classic")
  5.  {
  6.   header('Location: ../?p=Home');
  7.  }
  8.  
  9. if(empty($ver))
  10.  {
  11.   if($mobile == 0)
  12.    {
  13.     header('Location: ../?p=Home');
  14.    }


Plik ustawiania ciastek:
  1. $na = $_GET['na'];
  2. if ($na == "mobile")
  3.  {
  4.   setcookie("wersja", "mobile", time()+1000000000);
  5.   header("Location: m/?p=Home");
  6.  }
  7.  
  8. if ($na == "classic")
  9.  {
  10.   setcookie("wersja", "classic", time()+1000000000);
  11.   header("Location: m/../?p=Home");
  12.  }
  13.  
  14. if ($na == "deletecookie");
  15.  {
  16.   setcookie("wersja", "clear", time());
  17.   header("Location: m/?p=Home");
  18.  }

Pewnie robię jakiś głupi błąd, no ale bywa :/
Mam nadzieję że wyraziłem się zrozumiale smile.gif
P.S. Plik do ustawiania ciastek jest w głównym katalogu razem z klasyczną wersją, a strona mobilna jest w podfolderze m/

Ten post edytował herhor67 22.10.2014, 08:44:40
Go to the top of the page
+Quote Post

Posty w temacie


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: 22.08.2025 - 00:09