Omdat ik iedereen steeds maar gebruik zie maken van óf een switch, óf 300 keer een if heb ik deze er maar eens op gezet.
Je hebt een bestand waarin een array staat, met al je pagina's erin die bekeken mogen worden.
Vervolgens heb je een code voor index.php die kijkt of er een pagina geset is, en of die bekeken mag worden.
<?PHP
// eerst het bestand includen waar de toegestane pagina's in staan
include "paginas.php";
// vervolgens gaan we kijken of er een pagina geset is, en of die niet gelijk is aan begin
if(isset($_GET['pagina']) && $_GET['pagina'] != "begin")
{
// dat is dus zo
// kijken of het een toegestane pagina is
if(In_Array($_GET['pagina'], $aPagina))
{
// dat is ook zo
// de pagina mag dus gewoon bekeken worden
// die zetten we even in een variabele !! ZONDER !! .php er achter
// dit vind ik persoonlijk makkelijker, vooral als je een template systeem gebruikt
// nu hoef je er alleen maar .tpl of .php achter te zetten, en klaar
$sPagina = $_GET['pagina'];
} else
{
// de pagina mag niet bekeken worden of bestaat niet
// we stellen nu de error pagina in
$sPagina = "errors/404";
}
} else
{
// nu nog even de pagina instellen die weergeven word als er geen pagina in de url staat
// of als hetgene wat in de url staat gelijk is aan begin
$sPagina = "nieuws/index";
}
// de pagina includen
// hier zetten we het .php er achter zoals je ziet
include $sPagina.".php";
?>
<?PHP
// eerst het bestand includen waar de toegestane pagina's in staan
include"paginas.php";
// vervolgens gaan we kijken of er een pagina geset is, en of die niet gelijk is aan begin