PHP gevorderde |
|
Tja, ik heb altijd gezegd:
Controleer ook of er een . (punt) in de string zit, want als dat zo is kan men een map naar boven gaan:
index.php?page=index
Include index.php, index.php include weer index.php, ......
index.php?page=../site/index
Hetzelfde.
Voor de content in de map waar de site staat:
<?php
if(basename($_SERVER['PHP_SELF']) != $_GET['page'] && strpos($_GET['page'], '.') === false && file_exists($_GET['page'] . '.php'))
{
// includen
}
?>
<?php if(basename($_SERVER['PHP_SELF']) != $_GET['page'] && strpos($_GET['page'], '.') === false && file_exists($_GET['page'] . '.php')) { // includen } ?>
Voor de content in een aparte map:
<?php
if(strpos($_GET['page'], '.') === false && file_exists($_GET['page'] . '.php'))
{
// includen
}
?>
:D |