kostenloser Webspace werbefrei: lima-city


Unternavigation erstellen

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    fiffi

    Kostenloser Webspace von fiffi

    fiffi hat kostenlosen Webspace.

    Hallo,

    ich stehe grade auf dem Schlauch und benötige daher momentan einen kleinen Denkanstoss. :-)

    Ich möchte auf einer Website eine Hauptnavigation haben. Sobald man diese anklickt, soll sich auf der Linken Seite eine "Unternavigation" öffnen.

    Bisher habe ich immer die Seiten über include eingearbeitet.

    Vereinfachtes Beispiel:

    <?php $show = $_GET['show'];
    if ($show == '') {
    include('news.php');
    } else {
    include($show);
    }
    ?>


    Meine erste theoretische Lösung war nun, anstatt nur mit show mit einer zweiten Variable zu arbeiten.

    Somit wurde "show" verwendet um Text in das Hauptfeld zu bringen und "make" um Text in die Unternavigation zu bringen.

    Das Problem dabei jedoch: Wenn ich in der Unternavigation mit show arbeite, bekomme ich zwar meinen Text in das Hauptfeld, jedoch verschwindet meine Unternavigation wieder.

    Wie kann ich das verhindern?
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Eine Lösung, wo das Untermenü in einem extra Ordner ist.

    <?php $show = $_GET['show'];
    if ($show == '') {
    include('news.php');
    } else {
    include('untermenue/'.$show);
    include($show);
    
    }
    ?>


    Ansonsten eben halt eine zweite Variable nehmen.
  4. Hi

    Was zusätzlich noch zu erwähnen ist, dass du den Inhalt der GET-Variable besser prüfen solltest, sodasss z.B. nicht externe Skripte eingeschleust werden können. Am einfachsten ginge dies via einer switch Anweisung und dass wäre dann auch mein Lösungsansatz:
    $show = $_GET['show'];
    $show2 = $_GET['show2'];
    //Hauptnavigation
    switch($show)
    {
    case 'show.php':
    include('show.php');
    break;
    
    case 'hello.php':
    include('hello.php');
    break;
    
    default:
    include('news.php');
    }
    
    //dann nochmals das selbe für die Unternavigation
    if($show != $show2) //da nicht zweimal das selbe angezeigt werden soll hier die Eingrenzung
    {
    
    switch($show2)
    {
    case 'show.php':
    include('show.php');
    break;
    
    case 'hello.php':
    include('hello.php');
    break;
    
    default:
    include('news.php');
    }
    
    }


    Ich hoffe das hlift dir weiter.

    Gruess
  5. Autor dieses Themas

    fiffi

    Kostenloser Webspace von fiffi

    fiffi hat kostenlosen Webspace.

    Hallo!

    Ihr habt mir beide schonmal ein ganzes Stück weiter geholfen.

    Ich hatte zuvor auch bereits über 2 Variablen gearbeitet und diese mit case abgeprüft, es hatte sich mir jedoch ein kleiner Denkfehler eingebaut.

    Nun liegt mein Problem allerdings noch in einer Kleinigkeit, bei der ich vermutlich grade auch wieder falsch denke.

    Man kann sich das ganze Menü so vorstellen, dass es als Hauptpunkte a,b,c gibt und zu jedem jeweils unterschiedliche 1,2,3.

    An sich funktioniert das einbinden nun einwandfrei, aber:

    Wenn man auf z.B auf a klickt, löse ich durch <a href=?show=a.php">Unternavigation</a> aus, dass meine Unternavigation auftaucht. Wenn ich in dieser nun über ?show2 arbeite, bekomme ich die gewünschten Inhalte ebenfalls in mein Hauptfeld.

    Wie schaffe ich es jedoch in EINEM link sowohl ?show als auch ?show2 einzubringen, sodass ich einerseits die Unternavigation aktiviere, aber gleichzeitig eine andere (!) Seite in das Hauptfeld integrieren kann?
  6. Einen zweiten GET Parameter an die URL anhängen.

    news.php?show=a&menue=b
  7. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!