PHP Menü

J-One

Grünschnabel
Also ich hätte da mal eine Frage:

Ich habe bin gerade dabei mir eine neue Seite zu bauen und habe mich für ein Menü mit PHP entschieden (also eine Frame-lose Seite mit PHP gelöst).


Der Menü-Code:

HTML:
A href="index.php?site=home">HOME</A>


und so wird eine Seite eingefügt:

PHP:
<?php
if (!isset($_GET['site'])) { $_GET['site']="home"; }
if (file_exists($_GET['site'].".php")) { include($_GET['site'].".php"); } else { echo "<br><br><br><br><br><br><br><br><br><br><br><br><b><center>- 404 Error - Seite kann nicht angezeigt werden! -</center></b><br><br><br><br><br><br><br><br><br><br><br><br>";  }
?>

Jetzt ist das Problem, dass ich das Hauptmenü (HOME | ABOUT | PICS | ...) schon hab und das auch soweit. jetzt möchte ich aber, dass auf der "ABOUT"-Seite rechts ein kleiner Untermenü ist (die Bilder sind auch schon da) und dass sich beim klicken auf einen solchen Link dann in den übrigen zwei Spalten (rechts) eine neue Seite öffnet. Das gleiche dann bei "PICS" nur sollte da beim klicken auf eine Kategorie in der rechten Spalte in der ganz linken Spalte ein paar Thumbnails erscheinen und dann in der MItte das eigentlich Bild, also so ne Art Bildergalerie. Ich komm einfach nciht drauf und wäre froh um eine schnelle Antwort.

Die Seite findet ihr unter http://www.sar-records.de/23/index.php?site=about

Also schon mal besten Dank im Vorraus!

Euer J.One
 
Zuletzt bearbeitet:
Hallo,

wenn ich das richtig sehe übergibst du immer die Variable "seite", wodurch dann eine neue Seite Includiert wird. Wenn du auf der About-Seite auf einen Link klickst wird bei dir ja immer nur die "about" Variable. Übergib doch einfach die beiden Variablen wenn du rechts auf einen Link klickst und regle dann mit ner Switch Anweisung welche Seite aufgerufen wird.

Ich hoffe ich hab das verständlich erklärt. Wenn nicht frag einfach nochmal nach.
Und poste doch mal ein Stück vom Quelltext wo ausgewählt wird welche Seite angezeigt werden soll.
 
Ich hoffe, dass dir folgendes weiterhilft:


HTML:
<td width="154">
<br>
<a href="index.php?about=me"><img src="pics/men_aboutme.gif" width="154" height="20" alt="" border="0"></a><br>
<a href="index.php?about=freundin"><img src="pics/men_freundin.gif" width="154" height="20" alt="" border="0"></a><br>
<a href="index.php?about=shouts"><img src="pics/men_shouts.gif" width="154" height="20" alt="" border="0"></a><br>
</td>

Das kann aber nicht funktionieren, da ich ja nur die "about"-Varialble auf die Seite verweisen lass, die "about"-Variable steht aber an der gleichen Stelle wie das "site" und damit erscheint beim klicken erstens die Seite nicht und zweitens nicht an der richtigen Stelle. ich hab die "Stelle" im HTML Code zwar mit "about" angegeben, doch ich weiß auch nciht, wie ich das erklären soll, es kann halt nicht gehen.

Vielleicht kannst du mir das mit "Switch" anhand von meiner Seite erklären. Wär nett!

Bis dann.

J.One
 
Hallo,

du musst eine Seite erstellen die du z.B. navi.php nennst und diese in die index.php includieren und zwar dort wo später die Seiten hin sollen.

Die Datei sollte so aufgebaut sein:
PHP:
<?
switch($site)
{
case home:
include("home.php");
break;
 
case pics:
include("pics.php");
break;
 
case about:
if(!isset($about))
{
//Es wird geprüft ob die Variable $about existiert wenn nicht wird about.php includiert
include("about.php");
}
else
{
//Falls sie existiert wird die Variable geswitcht
switch($about)
{
	case me:
	 include("me.php");
	 break;
 
	case freundin:
	 include("freundin.php");
	 break;
 
	case shouts:
	 include("shouts.php");
	 break;
}
}
break;
 
default:
include("home.php");
break;
}
?>

Deine Links musst du natürlich auch ändern:

HTML:
<td width="154">
<br>
<a href="index.php?site=about&about=me"><img src="pics/men_aboutme.gif" width="154" height="20" alt="" border="0"></a><br>
<a href="index.php?site=about&about=freundin"><img src="pics/men_freundin.gif" width="154" height="20" alt="" border="0"></a><br>
<a href="index.php?site=about&about=shouts"><img src="pics/men_shouts.gif" width="154" height="20" alt="" border="0"></a><br>
</td>

Ich kann dir nicht 100%ig sagen ob das so klappt wie ichs gemacht habe, da ich nicht genau weiss wie deine Seiten aufgebaut sind. Aber so ähnlich müsste es funktionieren.
 
Zuletzt bearbeitet:
Es klappt nicht, es scheint sich um eine Endlosschleife zu handeln, da sich die "about.php"-Seite wenn ich auf den about-button klicke "unendlich" "wiederholt". Ich hoffe du verstehst was ich meine. Ich hab ehrlich gesagt noch nicht so viel ahnung von PHP, wie du sicher schon gemerkt hast, aber wenn du Zeit hast, dann könnte ich dir die nötigen dateien zuschicken oder du könntest mir eine für an meinen Fall angepasste Homepage basteln (nur ne einfache versteht sich), damit ich es ein bisschen kapier.

Bis dann.
 
Zurück