Nur als require ausführen

Hallo!

Wenn ihr ‚Unterprogramme‘ per require/include einbindet und verhindern wollt, daß die entsprechenden code’s auch selbstständig ausgeführt werden: Wie geht ihr vor? Was ist die einfachste und sicherste Lösung?

Ein ‚Passwort‘ im Hauptprogramm in 'ne Variabel schreiben und in allen Unterprogrammen abfragen?

Die ausgeführte URL überprüfen?

Oder gibt es da eine spezielle eingebaute Funktion, die ich einfach nicht finden kann?

dafür gibts mehrere Möglichkeiten…

Wenn ihr ‚Unterprogramme‘ per require/include einbindet und
verhindern wollt, daß die entsprechenden code’s auch
selbstständig ausgeführt werden: Wie geht ihr vor? Was ist die
einfachste und sicherste Lösung?

am sichersten ist wohl $PHP_SELF zu verwenden… ->
if ($PHP_SELF != „index.php“) die ("Die Seite darf nicht aufgerufen werden);

Ein ‚Passwort‘ im Hauptprogramm in 'ne Variabel schreiben und
in allen Unterprogrammen abfragen?

jopp, das geht auch;
index.php ->
$checktisvar = „onlyiamallowed!“;
include („hidden.php“);

hidden.php ->
if ($checktisvar != „onlyiamallowed!“) die ("Die Seite darf nicht aufgerufen werden);
allerdings ist das hier wieder gefährlicher, weil mit „falscher“ php.ini eine get oder post variable auch so abrufbar sein kann…
Kann man allerdings auch wieder checken

Die ausgeführte URL überprüfen?

die url vllt nicht, weil das tests bissl schwer macht - andererseits macht es das wieder sicherer… ansonsten könnte eine index.php von einem entferntem Server auch die hidden.php includieren…

Oder gibt es da eine spezielle eingebaute Funktion, die ich
einfach nicht finden kann?

wenn ja, lasst es mich wissen *g*

Danke!

Na dann…

Jetzt, wo ich weiß, worauf es ankommt…

werd ich wohl einfach mal drauf vertrauen, daß keiner die entsprechenden Dateinamen eingibt und mir später selbst in den Arsch beissen, wenn mir auf die Art einer die Datenbank zerschießt! :wink: