Hallo,
habe ein kurzes Anliegen, vielleicht kann mir jemand auf die Sprünge helfen.
Und zwar habe ich nach knapp 10 Jahren wieder angefangen mich ein bisschen mit PHP zu beschäftigen.
Um wieder ein "Gefühl" dafür zu bekommen, hab ich auf Code meiner alten Webseite zurückgegriffen, die allerdings noch unter PHP 4 geschrieben wurde.
Nun zu meinem Problem: Ich will eine Seite mit Hilfe der include-Funktion aufbauen. Dazu soll ein "Header", ein "Inhaltsteil" und ein "Footer" geladen werden.
So sieht meine index.php nun aus:
Jetzt passiert bei mir folgendes: Er lädt IMMER die start.inc, ganz egal was in der Adresszeile im Browser hinter ?show= steht. Ich weiß, dass die Seite genau so früher einwandfrei funktioniert hat, also nehme ich an, dass sich bei PHP etwas geändert hat. Ich hab aber nirgendwo etwas dazu gefunden :-/ Seht ihr was?
Im Idealfall sollte es so aussehen:
www.homepage.de/ -> Startseite
www.homepage.de/?show=start -> ebenfalls Startseite
www.homepage.de/?show=xyz -> xyz-Seite (sofern vorhanden)
www.homepage.de/?show=header (oder footer, oder eben nicht vorhanden) -> 404 Fehlerseite
Alle Seiten liegen auch als *.inc brav im Unterordner /seiten.
Selbst wenn ich die Variable $show manuell in der Browser-Adressleiste ändere, es zeigt mir trotzdem IMMER die Startseite an.
Habt ihr da irgendwelche Ideen? Wäre euch sehr dankbar!
Zur Info: Der Server steht bei 1&1, PHP 5.5 und MySQL 5 sind installiert...
Gruß,
ermel
habe ein kurzes Anliegen, vielleicht kann mir jemand auf die Sprünge helfen.
Und zwar habe ich nach knapp 10 Jahren wieder angefangen mich ein bisschen mit PHP zu beschäftigen.
Um wieder ein "Gefühl" dafür zu bekommen, hab ich auf Code meiner alten Webseite zurückgegriffen, die allerdings noch unter PHP 4 geschrieben wurde.
Nun zu meinem Problem: Ich will eine Seite mit Hilfe der include-Funktion aufbauen. Dazu soll ein "Header", ein "Inhaltsteil" und ein "Footer" geladen werden.
So sieht meine index.php nun aus:
Code:
<?php
$_GET['show']=$show;
if (!isset($show)) {
$show="start";
}
elseif ($show == header || $show == footer || !(file_exists("seiten/".$show.".inc"))) {
$show="404";
}
include 'seiten/header.inc';
include 'seiten/'.$show.'.inc';
include 'seiten/footer.inc';
?>
Jetzt passiert bei mir folgendes: Er lädt IMMER die start.inc, ganz egal was in der Adresszeile im Browser hinter ?show= steht. Ich weiß, dass die Seite genau so früher einwandfrei funktioniert hat, also nehme ich an, dass sich bei PHP etwas geändert hat. Ich hab aber nirgendwo etwas dazu gefunden :-/ Seht ihr was?
Im Idealfall sollte es so aussehen:
www.homepage.de/ -> Startseite
www.homepage.de/?show=start -> ebenfalls Startseite
www.homepage.de/?show=xyz -> xyz-Seite (sofern vorhanden)
www.homepage.de/?show=header (oder footer, oder eben nicht vorhanden) -> 404 Fehlerseite
Alle Seiten liegen auch als *.inc brav im Unterordner /seiten.
Selbst wenn ich die Variable $show manuell in der Browser-Adressleiste ändere, es zeigt mir trotzdem IMMER die Startseite an.
Habt ihr da irgendwelche Ideen? Wäre euch sehr dankbar!
Zur Info: Der Server steht bei 1&1, PHP 5.5 und MySQL 5 sind installiert...
Gruß,
ermel
Zuletzt bearbeitet: