Nadue
Grünschnabel
Entschuldigt bitte den Titel, ich weiß nicht genau wie man mein Problem benennen könnte.
Folgendes. Ich möchte gern meine Webseite wieder online bringen und werde mit includes arbeiten. Habe auch bereits den richtigen Code gefunden, womit laut google&co keine Sicherheitslücke mehr besteht.
Damit ist das Verzeichnis eingelesen und über $_GET verfügbar...
Problem:
wie kann ich den Index vom Blog includen, ohne dass ich die Seite oder gar das ganze CMS verschieben muss? Habe überlegt, ein extra array für den Blog anzulegen, der dann das Verzeichnis ausliest, in dem die Blogdateien liegen. Wie stelle ich das an - muss ich dazu eventuell eine weitere Seite im index includen und in der dann das neue array anlegen? Oder kann man das zusammen mit dem vorhandenen array verschachteln (beide Verzeichnisse auslesen?) - muss die Datei dann zwingend auf .inc.php enden, und wenn ja könnte ich den Index vom Blog einfach umbenennen?
Danke schonmal für eure Hilfe.
Eine Beispielseite ist noch nicht online, nur der Blog - da steht aber auch noch nichts drin.
Folgendes. Ich möchte gern meine Webseite wieder online bringen und werde mit includes arbeiten. Habe auch bereits den richtigen Code gefunden, womit laut google&co keine Sicherheitslücke mehr besteht.
PHP:
<?php
// Hier wird das Verzeichnis "./includes" eingelesen - Nur Dateien, die in diesem Verzeichnis liegen, werden geladen !!
$inc_array = array();
$inc_dir=opendir ("./includes");
while ($inc = readdir ($inc_dir)) {
if($inc != "." && $inc != "..") {
$short_inc = str_replace(".inc.php", "", $inc);
array_push ($inc_array, $short_inc);
}
}
closedir($inc_dir);
// Das Verzeichnis "./includes" ist fertig eingelesen und wird wieder geschlossen.
?>
Damit ist das Verzeichnis eingelesen und über $_GET verfügbar...
PHP:
<?php
/*
Hier wird überprüft, ob die angeforderte Datei im Verzeichnis "./includes" vorhanden ist
ja -> Datei wird includet
nein -> alternative Datei wird includet (z.B. Startseite oder Fehlerseite)
$_GET[***] -> ./index.php?***=Datei
*/
if (isset($_GET[site]) && in_array($_GET[site],
$inc_array) ) {
include("./includes/".$_GET[site].".inc.php");
} else {
include("./includes/header.inc.php");
}
?>
Problem:
wie kann ich den Index vom Blog includen, ohne dass ich die Seite oder gar das ganze CMS verschieben muss? Habe überlegt, ein extra array für den Blog anzulegen, der dann das Verzeichnis ausliest, in dem die Blogdateien liegen. Wie stelle ich das an - muss ich dazu eventuell eine weitere Seite im index includen und in der dann das neue array anlegen? Oder kann man das zusammen mit dem vorhandenen array verschachteln (beide Verzeichnisse auslesen?) - muss die Datei dann zwingend auf .inc.php enden, und wenn ja könnte ich den Index vom Blog einfach umbenennen?
Danke schonmal für eure Hilfe.
Eine Beispielseite ist noch nicht online, nur der Blog - da steht aber auch noch nichts drin.