Sabine: navigation

Hey!

ich will eine seite in php programmieren. dabei will ich dass auf jeder seite oben eine art wegweiser steht, wo man eben grade ist, sowas wie hauptseite -> thema -> unterseite.
wie mach ich das am geschicktesten, also so dass ich das irgendwie verallgemeiner/automatisiere und nicht auf jeder seite manuel links einfügen muss?
hoffe ihr versteht was ich meine!
viele grüße,

Sabine

  1. Hallo Sabine,

    diese Art von Navigation nennt sich Brotkrümelnavigation.

    Vielleicht findest Du mit Hilfe dieses Begriffes weitere Informationen, wie man diese Navigation am Besten umsetzt. Hängt jedoch wahrscheinlich stark von der Struktur und dem Aufbau deiner Website ab.

    Herzliche Grüße aus Weinsberg
    Helmut Weber

    --
    -------------------------------------------
    Mode ist eine Variable, Stil eine Konstante
  2. ich will eine seite in php programmieren. dabei will ich dass auf jeder seite oben eine art wegweiser steht, wo man eben grade ist, sowas wie hauptseite -> thema -> unterseite.

    Krümmelnavigation nennt sich sowas. Siehe Hänsel und Gretel.

    wie mach ich das am geschicktesten, also so dass ich das irgendwie verallgemeiner/automatisiere und nicht auf jeder seite manuel links einfügen muss?

    Da Du sicher so schlau bist, die URLs so zu gestalten, dass sie der Navigation entsprechen (aus Deinem Beispiel: "/hauptseite/thema/unterseite/"), bräuchtest Du nur die URL ($_SERVER["REQUEST_URI"]) in einer while-Schleife Stück für Stück bis zum jeweils nächsten Schrägstrich (strpos()) zusammen mit einem passenden Titel ausgeben.

    Die Funktion lagerst Du in eine separate Datei, die per include() an der gewünschten Stelle eingebunden wird.

    $titel = Array("/" => "Startseite", "/hauptseite" => "Hauptseite", usw.)
    $a = 0; $b = 0;
    while (($b = strpos($_SERVER["REQUEST_URI"], "/", $a) !== false) {
      $u = substr($_SERVER["REQUEST_URI"], 0, $b)
      echo '<a href="' . htmlspecialchars($u) . '">' . $u . '</a> ';
      $a = $b;
    }

    So ungefähr, die sicher mannigfaltigen Fehler darfst Du selbst ausbügeln.

    1. Da Du sicher so schlau bist, die URLs so zu gestalten, dass sie der Navigation entsprechen (aus Deinem Beispiel: "/hauptseite/thema/unterseite/"), bräuchtest Du nur die URL ($_SERVER["REQUEST_URI"]) in einer while-Schleife Stück für Stück bis zum jeweils nächsten Schrägstrich (strpos()) zusammen mit einem passenden Titel ausgeben.

      Das mit der Seitenstruktur hört sich ganz gut an, aber passt nicht so zu meinem system.
      würdet ihr mir abraten das ganze mit sessions zu lösen??
      mfg!

      1. Hallo Sabine,

        würdet ihr mir abraten das ganze mit sessions zu lösen??

        Nur mit Sessions wirst Du dein Problem nicht lösen können. Du meinst sicherlich, dass Du in einer Session die besuchten Seite deines Besuchers speicherst, und daraus die Brotkrümelnavigation zusammenbastelst.

        Dies wird wahrscheinlich daran scheitern, dass es immer mehrere Wege zu einer Seite gibt (z.B. durch Querverweise oder direkte Verlinkung).

        Wenn also der Dateiname mit Verzeichnis keinen Aufschluss zur Struktur der Website liefert, musst Du evtl. diese Information separat in deinem Projekt speichern (z.B. dass die Seite X eine Unterseite von Y und diese wiederum unter Z ist.)

        Herzliche Grüße aus Weinsberg
        Helmut Weber

        --
        -------------------------------------------
        Mode ist eine Variable, Stil eine Konstante