Skocz do zawartości

skrypt php podkatalogi


Aver

Rekomendowane odpowiedzi

Witam mam taki skrypt na includowanie plików z katalogu pages. Po wpisaniu adresu www.adrestrony.pl/index.php?page=strona_glowna wyświetla się plik strona_glowna.php z katalogu pages, ale teraz chce zrobić żeby po wpisaniu www.adrestrony.pl/index.php?page=strona_glowna&go=linki wyświetlał się plik pages/strona_glowna/linki.php Jak przerobić ten skrypt?

<?php
$page = $_GET['page'];

if(!empty($page)) {
	if(is_file("pages/$page.php")) {
		include "pages/$page.php";
	}
	else {
		echo "Taka strona nie istnieje!";
	}
}
else {
	include "pages/strona_glowna.php";
}
?>

Może ktoś zna na to lepszy skrypt?

Odnośnik do komentarza
Udostępnij na innych stronach

Po pierwsze to taki skrypt nie jest za dobry z tego prostego powodu, że można do parametru page przekazać dowolny ciąg znaków i dołączać dowolne pliki.

Takie rzeczy robi się np. przez bazę danych gdzie wpisujesz adresy plików powiązane z identyfikatorami, np. tabela z kolumnami:

id - numeryczny id strony

page - adres pliku

i teraz:

www.adrestrony.pl/index.php?pageId=identyfikator strony

w skrypcie index.php po pierwsze sprawdzasz czy parametr pageId istnieje i czy jest liczbą (funkcja is_numeric),

następnie wyciągasz dane strony z bazy - i jeżeli podano prawidłowy id, dokonujesz dołączenia strony.

Odnośnik do komentarza
Udostępnij na innych stronach

Ewentualnie opcja numer dwa: robisz sobie prostą "bazę" w tablicy, np.:

$pages = array(0 => 'kontakt.php', 1 => 'inna-strona.php', 2 => 'katalog/strona.php');

if (isset($_GET['pageId'])) $page =& $_GET['pageId'];
else $page = false;

if(is_numeric($page) && isset($pages[$page])) {
	if(is_file("pages/".$pages[$page])) {
		include"pages/".$pages[$page];
	}
	else {
		echo "Taka strona nie istnieje!";
	}
}
else {
	include "pages/strona_glowna.php";
}

Odnośnik do komentarza
Udostępnij na innych stronach

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę. Warunki użytkowania Polityka prywatności