Tom: Alle Seiten aus einer zentralen index.php starten...

Beitrag lesen

Hello,

ich habe bisher eine Seite, die aus vielen verschiedenen PHP-Dateien besteht. Jetzt bin ich auf die Idee gekommen (oder besser: Ich hab gesehen, dass andere Seiten das so machen) alle Seiten aus einer Indexdatei heraus zu starten.

<a href="index.php?page=home">Home</a>
<a href="index.php?page=gb">Gästebuch</a>
<a href="index.php?page=forum">Forum</a>

index.php:

<?

$pagedir = "/www/domain/pages/";  # als Beispiel
#   $docroot = "/www/domain/docs/";   # nur als Bsp. zur Lage von $pagedir
    $ext     =".php";

if (isset($_GET["page"]))
     $page = $_GET["page"] . ".php";

$_parts = pathinfo($_GET["page"]);
       $page = $pagedir.basedir($_parts["basedir"],".".$_parts["extension"]).$ext;

Sonst kann man den ganzen Server nach *.php-Dateien absuchen

else
     $page = "home.php";

if (!file_exists($page))
    $page = "home.php"

include ($page);
?>

##############

Was haltet ihr davon?

Abgesehen davon, dass das der Anfang einer netten Studie über Include, Sicherheit und ModRewrite werden könnte halte ich gar nichts davon. Es ist für statische Seiten meistens unsinnig, sie derartig bereitzustellen. Einziger Vorteil: man kann über Sessions auch den Aufruf von Einzelframes vermeiden.

Suchmaschinen mögen derartig referenzierte Seiten nicht gerne freiwillig aufnehmen. Man schießt sich damit also ein Eigentor.

Das Ganze lohnt sich mMn nach nur, wenn man die Seiten dynamisch aus einer DB erzeugt, vorzugsweise bei Communities und Portalen. Das hat aber auch nur Sinn, wenn die Elemente einer Seite klassifiziert sind und man z.B. automatisch dafür sorgt, dass ein Termin nicht nur auf der eigentlichen Veröffentlichungsseite erscheint sondern auch in der allgemeinen Terminliste oder das Produkt-Angebot eines Teilnehmers automatisch in der gemeinsamen Liste der Angebote steht usw...

Auch unterschiedliche Zugriffsrechte für die (verstreuten) Seiten des Webangebotes lassen sich damit regeln.

Liebe Grüße aus http://www.braunschweig.de

Tom

--
Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen