PHP expert |
|
Ik zou teneerste een ander include systeem gebruiken, want die is niet goed die je hebt.
En hoe je dat zou moeten doen?
Gewoon include 'bestand.php'; in je pagina.php doen die je included lijkt me
Owjah en dit pagina ding heb ik ooit in elkaar geflikkerd, ik zet het nog wel een keer tussen de scripts ofzo
<?
$pArray = array('home','links','contact','informatie','dieren');
// Een array met daarin de toegestane pagina's.
$pExtensies = array('html','php','htm');
// Een array met de mogelijke extensies die de pagina kan bevatten.
// Let wel op dat hij van links naar rechts leest, dus als je
// pagina.html hebt en pagina.php hebt wordt pagina.html gekozen.
if(isset($_GET['pagina']))
{
// Kijken of de pagina uberhaupt wel wordt aangevraagd.
// Dit wordt doormiddel van superglobals gedaan, dit is
// wel net zo veilig.
if(in_array(strtolower($_GET['pagina']),$pArray))
{
// Fijn, de pagina bevindt zich in de array, dus hij mag door
foreach($pExtensies as $fKey => $fWaarde)
{
// Met foreach kun je een array doorlopen
// in dit geval lopen we $pExtensies door
// om te kijken of de pagina eindigt op
// een van de extensies in de array
if(file_exists($_GET['pagina'].'.'.$fWaarde))
{
include $_GET['pagina'].'.'.$fWaarde;
// Nou dit is dan het enigste punt waar de pagina wordt geincluded.
break;
// Met break stop je nadat je de pagina hebt gevonden,
// anders loopt de array gewoon door en worden er
// meerdere pagina's geincluded.
}
}
}
else
{
echo 'Deze pagina bestaat niet. ';
// De pagina bevindt zich niet in de array, dus je kunt bijvoorbeeld
// een foutmelding weergeven.
}
}
else
{
echo 'De homepagina.';
// ?pagina= staat niet in de adresbalk,
// dus de standaardpagina wordt weergeven.
}
?>
<? $pArray = array('home','links','contact','informatie','dieren'); // Een array met daarin de toegestane pagina's. $pExtensies = array('html','php','htm'); // Een array met de mogelijke extensies die de pagina kan bevatten. // Let wel op dat hij van links naar rechts leest, dus als je // pagina.html hebt en pagina.php hebt wordt pagina.html gekozen. if(isset($_GET['pagina'])) { // Kijken of de pagina uberhaupt wel wordt aangevraagd. // Dit wordt doormiddel van superglobals gedaan, dit is // wel net zo veilig. { // Fijn, de pagina bevindt zich in de array, dus hij mag door foreach($pExtensies as $fKey => $fWaarde) { // Met foreach kun je een array doorlopen // in dit geval lopen we $pExtensies door // om te kijken of de pagina eindigt op // een van de extensies in de array { include $_GET['pagina'].'.'.$fWaarde; // Nou dit is dan het enigste punt waar de pagina wordt geincluded. break; // Met break stop je nadat je de pagina hebt gevonden, // anders loopt de array gewoon door en worden er // meerdere pagina's geincluded. } } } else { echo 'Deze pagina bestaat niet. '; // De pagina bevindt zich niet in de array, dus je kunt bijvoorbeeld // een foutmelding weergeven. } } else { // ?pagina= staat niet in de adresbalk, // dus de standaardpagina wordt weergeven. } ?>
|