Besseres includen

Ich habe kein Plan. So in etwa?

PHP:
$site = ( isset($_REQUEST['site']) && is_readable('website/'.index.php($_REQUEST['site'])) )
    ? 'website/'.main.php($_REQUEST['site'])
    : '';
 
Das würde gehn angenommen deine includeten Dateien sind im "webspace"-Ordner.
Normalerweise hat man ja einen Ordner wo man die links reinpackt.
Dieses Thema hatten wir schon mal, das mit der Sicherheit mache einfahc eine Whitelist das ziemlich sicher.

Das Thema ist hier

Sir Robins Vorschlag ist sehr gut.

mfg
 
Danke schonmal, aber nicht. Kommt immer 404 egal was ich eingebe.

<?
$host=$_SERVER['HTTP_HOST'];

// das Array mit den erlaubten Seiten
$gestattet = array('http://$host/main.php?open=news', 'main.php', 'links.php', 'dls.php');

if( in_array($_GET['go'], $gestattet) ) {
// ... Zugriff erlaubt, include Seiten
include('http://$host/main.php?open=news');
} else {
// ... nicht erlaubt, 404
include('404.php');
}

?>
 
Hi mach es dir doch nicht so schwierig :(
Du brauchst keine vollständigen Pfade includieren, es reichen relative Pfade..
Bitte nutze für Code die entsprechende Formatierung ! z.b. PHP

PHP:
// das Array mit den erlaubten Seiten
$gestattet = array('news.php', 'main.php', 'links.php', 'dls.php');
$link = $_GET['go'];
if(in_array($link, $gestattet) ) {
// ... Zugriff erlaubt, include Seiten
include "$link";
} else {
// ... nicht erlaubt, 404
include('404.php');
}

mfg
 
Ahh ich bekomme es nicht hin!

Altes Includescript:

PHP:
<?
$site = (isset ($_REQUEST['site'])) ? $_REQUEST['site'] : '';
$host=$_SERVER['HTTP_HOST'];

if($site=="") {
// News System Include

include("http://$host/main.php?open=news");

}
  else {
			include($site);
}

?>

Und ich möchte das gerne einbauen:

PHP:
<?
// das Array mit den erlaubten Seiten
$gestattet = array('index.php', 'main.php', 'links.php', 'dls.php');
$link = $_GET['go'];
if(in_array($link, $gestattet) ) {
// ... Zugriff erlaubt, include Seiten
include "$link";
} else {
// ... nicht erlaubt, 404
include('404.php');
} 

?>

Aber leider egal was ich mache es kommt immer 404 und die anderen sachen möchte er dann nicht mehr includen. Wie kann ich die beiden dinger Verknüfen? Irgendwelche Ansätze? Krieg es nicht gebacken :(

Vor allem, wie bekomme ich es hin, dass ich auch weiterhin index.php?site=blal.php eingeben kann?
 
Zurück