Dynamiczne linki na stronach www
Ocena: 0.0/5 (0 ocen) Zaloguj się, aby móc głosować
Opublikował: edious, Dn: 29.07.2005, Wyświetleń: 32 |
Dynamiczne linki na stronach www Na różnych forach dyskusyjnych wiele razy pojawia się pytanie: Jak stworzyć coś takiego: http://www.serwer.pl/index.php?page=text&id=2 dlatego postanowiłem ułatwić wam to zadanie i wyjaśnić co nieco na ten temat. Otóż sprawa jest prosta. Wszystkie znaki po "?" są po prostu zmiennymi. Zmienne te stosuje się dla przekazania jakiejś informacji. Np. Z podanego przykładowo linku wynika że: zmienna $page ma wartość "text" - page=text Tak samo jest z dalszymi ciągami znaków. Znak "?" oddziela adres strony od zmiennych. Gdy tych jest więcej stosujemy przed każdą następną znak "&" Do czego to użyć? Np: Mamy stronę (jakiś layout) i aby nie kopiować go do każdego textu osobno, wystarczy w miejsce, gdzie mamy jakąś treść strony wstawić taki oto kod: <?
if ($page=="") { include("wstep.html"); }
if ($page=="game") { include("gry.html"); } ?> |
Kod sprawdza zmienną $page i wykonuje przypisaną do niej instrukcję. Np: jeśli otworzymy stronę, wówczas zmienna ta będzie pusta ($page="") więc do szablonu załaduje się strona wstep.html Znacznie lepiej jest jednak skorzystać z instrukcji swich, wykonuje to samo, jednak nie sprawdza każdego warunku jak w przypadku if, lecz przerywa działanie, gdy odnajdzie ten właściwy. Kod poniżej: | <? switch($page) { case "": include("wstep.html"); break;
case "game": include("gry.html"); break;
?> |
Kod powyższy jest moim zdaniem lepszym rozwiązaniem. Można jednak to zrobić w jeszcze inny sposób: | <? if (file_exists("$page.html")) { include("$page.html");
}else { include("wstep.html"); }
?> |
W powyższym kodzie, sprawdzamy najpierw zmienną $page, która określa nazwę danej strony do wczytania, i sprawdza czy plik o takiej nazwie istnieje. Jeśli plik istnieje, zostanie wczytany, jeśli nie, skrypt otworzy i wczyta stronę wstep.html Takie jednak jest żadko stosowane. Pamiętajmy jednak, że jeśli serwer ma wyłączone zmienne globalne, to powinniśmy zamiast $page pisać $_GET[page] Na koniec zamieniamy rozszerzenie tak spreparowanej strony z .html na .php Jest to bardzo ważne, aby wszystko działało bez zarzutów. Linki oczywiście tworzymy podając w nich zmienne np: index.php?page=wstep
Dodaj komentarz Drukuj
|