Hi,
wie weiß deine index.php eigentlich, welche Datei zu includen ist? Wenn Du sowas hier machst: http://meinserver/index.php?inc=diesedatei.php dann ist das sehr gefährlich und anfällig für Cross-Site-Scripting. Besser ist es ein Array in der index.php vorzuhalten, das den Include-Files einen eindeutigen Namen zuweist:
$files = array (
'bla' => 'foo.php',
'zap' => 'bar.php'
);
include $files[$_GET['inc']];
Ok, soviel dazu. Den Zugriff kannst Du auch einschränken indem Du in der index.php eine globale Variable einführst und in den include-Files testest, ob die Variable einen bzw. den richtigen Wert hat. Ansonsten lässt Du die include-files einfach sterben. Aber auch die anderen angesprochenen Möglichkeiten mit .htaccess bzw. Ablage ausserhalb der Webroot sind wirksame Mittel.
viele Grüße
Achim Schrepfer
--
http://reskit.speedesign.de/ - PHP-Bibliothek zum automatischen Erzeugen von HTML-Tabellen, -Formularen und -Baummenüs anhand von MySQL-Tabellen
Selfcode: sh:) fo:| ch:| rl:° br:> n4:{ ie:% mo:} va:| de:< zu:| fl:( ss:) ls:& js:|