[PHP] switch($_GET[‚mode‘]) {
case „gallery“:
//code
break;
case „news“:
//code
break;
case „stuff“:
//code
break;
default, etc etc
}
[/PHP]
Also so? Aber dann braucht man für die Ausgabe von HTML-Tags usw, kein echo mehr? Tut mir eicht leid die dämlichen Fragen, aber ich bin halt n´noch ein Noob in PHP.
so gehts meiner Einung nach einfacher als mit switch:
[php]<?php
//hier kommen alle Seiten rein, die es gibt
$seiten = array(
‚startseite‘,
‚impressum‘
//und so weiter
);
include in_array($seite, $seiten) ? ‚seiten/‘.$seite.‚.html‘ : ‚seiten/startseite.html‘;
?>[/php]im Verzeichnis Seiten wäre dann alles, was es so gibt als .html-Datei und um <?php ?> herum steht der Code, der unverändert bleibt.
EDIT:
Fehler im Code berichtigt (Parameter für in_array waren vertauscht)
Ich muss meinen Code jetzt trotzdem nochmal erklären (ich muss einfach), ob du ihn benutzt oder nicht ist deine Sache
Also gut, so gehts:
Du hast die Datei index.php im Hauptverzeichnis, dadrin ist dein HTML-Code
Du hast weiterhin das Verzeichnis Seiten, in dem erstellst du jetzt für jede Seite nur den Inhalt (also das, was sich ändert, wenn man auf einen Link klickt) d.h. du hast beispielsweise startseite.html, ueber_mich.html und impressum.html
Da, wo jetzt steht
[php]//hier kommen alle Seiten rein, die es gibt
$seiten = array(
‚startseite‘,
‚impressum‘
//und so weiter
);[/php]schreibst du die Seiten hin (ohne .html), die du im Verzeichnis seiten/ erstellt hast.
Dann fügst du den ganze Code wie er oben steht in deine index.php an der Stelle ein, wo sonst der Inhalt stehen würde.
Wenn du die Seite nun wie oben beschrieben aufrufst, wird an der Stelle, wo dieser Code steht nun der Inhalt der entsprechenden Datei im Verzeichnis seiten/ angezeigt
Wenn du den Code komplett verstehen möchtest guck mal hier oder hier.