Ankündigung

Einklappen
Keine Ankündigung bisher.

Navigation

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Navigation

    Meine Frage dreht sich um das Programmiertechnische einer Navigation.
    Ich habe vor eine Page mit divs aufzubauen, nur weis ich nicht wie ich es umsetzensoll das bei einem klick auf einen Link in der Navigation eine andere Seite im mittleren div aufgerufen wird. Ok, ich habe es mal mit einem include ausprobiert, aber dann funktionierend ie ganzen Pfade nicht mehr.

    Ich könnte mir 2 möglichkeiten vorstellen wie man sowas lösen könnte.
    Die erste man Hat eine Seite in der man die ganzen anderen Seiten bei einem klick immer per include einfügt oder man macht es so das man die Navigation in jede Seite einfügt. Wie würdet ihr es machen, oder wie macht ihr es? Ich habe ganz einfach ein problem damit ein Konzept für eine funktionierende Navigation aufzubauen. Bitte gebt mir Tips oder Beispiele wie ihr den Navigationsteil auf euren Websites umsetzt...

    mfg snatch

  • #2
    Letztlich ist es geschmackssache, ob du eine zentrale Seite [1] hast, die per Parameter angewiesen werden kann, welcher Content geladen werden soll.
    Jedem Content eine eigene Seite zu geben, der die Navi einbindet ist auch möglich [2], hast du ja auch schon gesagt.

    Ich bevorzuge die letzte Variante, da ich Dateiaufrufe schöner finde als Parameter-Aufrufe und weil die Index-Datei [1] letztlich statt dem Anzeigen des Contents wie bei [2] den Content eben includet. Somit brauch ja sowieso jeder Content seine eigene Datei (wenn nicht alles komplett aus der DB generiert wird wie bei News z.B.).

    Du musst es halt nur so strukturieren, dass du das Gerüst, also das Layout trotzdem zentral irgendwo ablegst, zum Beispiel als Template. Denn wenn du für Beispiel [2] jetzt eine Layout-Änderung vornehmen wolltest und das Layout nicht zentral abgelegt hast, musst du es in jeder Unterseite ändern. Das kann natürlich ein enormer Mehraufwand sein.
    Also führ dir immer vor Augen, doppelten Code (der auch sinngemäß zusammengehört) möglichst zu vermeiden, in HTML und PHP.

    Kommentar


    • #3
      ok, wenn ich es also nach deiner bevorzugten art mache und die navi in die php scripte per include lade. wie mache ich das dann mit der aufteilung der seite?
      es sollte ja im normalfall so sein das links die navi ist und rechts davon der inhalt.
      wenn ich nun die navi in jedes script immer neu lade, verändern sich ja die größen.

      ich komme einfach nicht dahinter wie ich es bewerkstelligen soll das aussehen der seite immer gleich zu halten oder überhaupt eins hinzubekommen.

      was ich vergessen habe zu sagen ist das ich das alles mit smarty machen will...
      ich hoffe man kann verstehen was ich sagen will.

      mfg snatch

      Kommentar


      • #4
        hallo.


        Also zu smarty kann ich dir leider nichts sagen.. aber lies dir mal
        tut.php-q.net durch... vielleicht kennst du das tutorial ja schon.. dort wird ein dreispaltenlayout erzeugt (schritt für schritt)...

        mfg
        Andi

        Kommentar


        • #5
          Hallo.

          Ich bevorzuge ein zentrales Skript, bei dem alle Aufrufe eingehen. Mit der zweiten genannten Möglichkeit lassen sich relativ schnell irgendwelche Sites aufziehen, da man sich keinen großen Kopf machen muss, aber das macht dennoch in meinen Augen selten Sinn.

          Letztlich ist der Ablauf ja immer der: Request geht ein, wird analysiert und der entsprechende Code, der den Request abarbeiten soll aufgerufen. Der entscheidet, welche Seite eingebunden wird und stellt die Daten zusammen. Dann wird die Seite zusammengebastelt und ausgespuckt.

          Natürlich kann man sich nun für jede Seite ein eigenes Skript schreiben und für jede Seite, die eine Interaktion mit dem Benutzer bietet, diese Struktur neu aufziehen, aber ich "klammere" gerne "aus".

          Bliebe die Frage, wie entschieden wird, wie die Navigation angezeigt werden soll. Sinnvoll ist es, diese Entscheidung erst zu treffen, wenn entschieden ist, welche Seite eingebunden werden soll. Das klingt banal, aber wird doch oft anders gemacht, wenn z.B. ein zentrales Skript die Ausgabe der "HTML-Rahmens" macht, die Navigation ausgibt und dann eben mitten aus der HTML-Ausgabe irgendein Skript eingebunden wird, dass den Haupt-Content ausspuckt.

          Das mag oft auch ausreichend sein, denn ob der Benutzer nun bei einem Gästebuch das Eingabeformular sieht oder die erste Seite der Einträge oder die letzte, die Navigation wird wohl jeweils die selbe sein. Aber letztlich schränkt sich damit nur unnötig ein, vor allem was mögliche Unterpunkte und Weiterleitungen angeht.

          Und, um zu entscheiden, was angezeigt werden soll, braucht es eine Zuordnung von der angezeigten Seite in die Sitemap, was in der Regel ja eben recht einfach ist (jede Gästebuch-Seite wird unter dem Menüpunkt "Gästebuch" zusammengefasst). Diese zentrale Sitemap könnte durch die einzelnen Module dann noch erweiterbar sein...

          Letztlich hängt das alles von den Anforderungen ab, wie komplex und flexibel oder einfach das sein muss/kann und wie das dann konkret umgesetzt werden kann.

          Was die DIVs angeht: Wo ist das Problem? Menü-Layer sind doch immer skalierbar, wenn es sichnicht gerade um ein statisches Hauptmenü handelt. Da müsstest du einfach mal deine bisherigen Versuche oder deine Layout zeigen, um zu diskutieren, wie an das umsetzten kann.

          Basti

          Kommentar

          Lädt...
          X