Php: Menü über include Probleme

  • Habe nach langem suchen endlich gute php Einstiegsbücher gefunden und nun auch mal ein kleineres "Menü-Skript" gebastelt. Also


    Home - Kontakt - About - Impressum



    Skript, um die Inhalte zu lesen:


    Code
    <?
    switch ($gehe) {
    case home:
       include ("content/home.php"); break;
    case Kontakt:
       include ("content/kontakt.php"); break;
    usw....
    default  include ("about_sub.php");
      break;
    ?>


    Von den 4 Menüpunkten enthalten 2 Untermenüs und diese möchte ich über das obige Skript inkludieren. Also z.B.


    Zitat


    About
    Ich - Du - Wir


    Kontakt
    Privat - Geschäftlich - Chef


    Über "default"wird mir zwar das About-Submenü inkludiert. Wenn ich aber auf Kontakt klicke, erscheint zwar anfangs das Kontakt-Submenü, nach einem Klick auf "Privat.." ist das Kontakt-Submenü aber wieder weg und es erscheint das About-Submenü..


    Wie bekomme ich es hin, dass das Kontakt-Submenü bestehen bleibt, wenn ich auf "Privat.." klicke und sich nicht das About-Submenü öffnet?


    Habe im Internet schon nach Lösungen gesucht, aber außer etlichen komplizierteren Menüs (welche ich vorerst nicht brauche), keine brauchbare Lösung gefunden. Wenn jemand Tipps hat, wäre ich sehr dankbar in meinen Büchern habe ich hierzu leider auch nichts finden können.


    Mein Lösungsansatz wäre gewesen, ein "default#2" zu setzen, aber das hat vorne und hinten nicht geklappt leider.

    Spiele: Darkfall, Manhunt2 (100 % ungeschnitten, 100 % ohne Stasidiktatur)
    Von Spielern für Spieler
    Gegen Aktionäre, Großkonzerne in der Spieleindustrie!


    Fasching statt Amikommerz & Halloween

  • Jein =)


    Ich möchte folgendes:


    Wenn ich auf "Kontakt" klicke, soll das Kontakt-Submenü so lange offen bleiben, bis ich auf "About" klicke. Derzeit ist es aber leider so, dass durch "default" das Kontakt-Submenü sofort nach klicken auf einen der Unterpunkte verschwindet.


    Im Prinzip möchte ich einfach nur erreichen, dass das jeweilige Submenü so lange bestehen bleibt, bis ich das andere öffne.


    Ein Beispiel für so ein Menü:


    http://www.woltlab.com/

    Spiele: Darkfall, Manhunt2 (100 % ungeschnitten, 100 % ohne Stasidiktatur)
    Von Spielern für Spieler
    Gegen Aktionäre, Großkonzerne in der Spieleindustrie!


    Fasching statt Amikommerz & Halloween

    Einmal editiert, zuletzt von Thor ()

    • Offizieller Beitrag

    machs mit ner variablen. durch drücken auf den menüpunkt z.B.
    $kontaktmenu_open = "on";


    und das gibst per POST immer mit weiter, und überprüfst mit ner if-schleife.
    und wenn was anderes auf on gesetzt wird, machst halt gleichzeitig ein off für alle anderen menü-variablen.


    :) wobei ich mit meinen murks-php-skillz so machen würd ;) ein guter coder hat vielleicht ne elegantere lösung *g*

  • Danke Dir.


    Werde das mal probieren, wobei ich mich da natürlich noch einarbeiten muss. Aber so wie Du das erklärst, klingt das logisch.


    ps: Wäre das Ganze auch über hide & show als Javascript zu realisieren?

    Spiele: Darkfall, Manhunt2 (100 % ungeschnitten, 100 % ohne Stasidiktatur)
    Von Spielern für Spieler
    Gegen Aktionäre, Großkonzerne in der Spieleindustrie!


    Fasching statt Amikommerz & Halloween

  • CSS kann ich eigentlich nicht schlecht, aber damit ein Submenü zu erstellen, traue ich mir leider auch nicht zu.


    Werde jetzt versuchen, dass über Deinen Lösungsansatz hinzubekommen.

    Spiele: Darkfall, Manhunt2 (100 % ungeschnitten, 100 % ohne Stasidiktatur)
    Von Spielern für Spieler
    Gegen Aktionäre, Großkonzerne in der Spieleindustrie!


    Fasching statt Amikommerz & Halloween

  • Mit javascript kenne ich mich leider sehr wenig aus. Wie würde das funktionieren?


    Ich bekomme das PHP Skript zwar einigermaßen hin, nur leider funktioniert die Weitergabe über POST nicht =(

    Spiele: Darkfall, Manhunt2 (100 % ungeschnitten, 100 % ohne Stasidiktatur)
    Von Spielern für Spieler
    Gegen Aktionäre, Großkonzerne in der Spieleindustrie!


    Fasching statt Amikommerz & Halloween

  • Hast du'n Glück, ich hab mir sowas auchmal geschrieben :P in JS


    Ich geb dir einfachmal die codes ;)
    Für einen Button bzw. die Verlinkung des Mainmenus

    Code
    <a href="#" onClick="showit(0)"><img src="bild.png" width="die_breite" height="die_hoehe" border="0"></a>
    <a href="#" onClick="showit(1)"><img src="bild.png" width="die_breite" height="die_hoehe" border="0"></a>


    das wichtigste showit(0) bzw. (1)


    Das div-tag für die Subnavi (einfach dorthin wo sie sein soll unter die mainnavi :D - ach was ich nicht sage xD)

    Code
    <div id="describe" onMouseover="clear_delayhide()" onMouseout="resetit(event)"></div>


    Das eigentliche JavaScript


    Ist natürlich beliebig erweiterbar, einfach in der verlinkung mit showit() immer eins raufgehen ...
    dann natürlich auch im JS-Code bei submenu[] die selbe zahl eingeben, wie der button hat :evil:

  • Wow super, vielen Dank! Das klappt super, ich glaube, nach *php werde ich wohl ordentlich Javascript lernen müssen =)


    Danke nochmal

    Spiele: Darkfall, Manhunt2 (100 % ungeschnitten, 100 % ohne Stasidiktatur)
    Von Spielern für Spieler
    Gegen Aktionäre, Großkonzerne in der Spieleindustrie!


    Fasching statt Amikommerz & Halloween

  • Wie lernt man aus diesen Büchern am effektivsten? Bis lang schreibe ich die Scripts ab und versuche, das Ganze zu verstehen. Gibts vielleicht spezielle Tricks, denn die ganzen Formeln etc. kann man sich ja nie alle merken.

    Spiele: Darkfall, Manhunt2 (100 % ungeschnitten, 100 % ohne Stasidiktatur)
    Von Spielern für Spieler
    Gegen Aktionäre, Großkonzerne in der Spieleindustrie!


    Fasching statt Amikommerz & Halloween

  • oft anwenden
    prinzipien merken


    so merkt man sichs eigentlich immer am besten


    Code is immer ein Trial and Error bzw. eine reine Übungssache :)


    hätt mir auch nie gedacht, dass ich jemals was grafisches in C/C++/C# zambring, aber mit Übung gehts schon


    also, probieren, probieren, probieren :)


  • Jop ;)

  • Ok danke euch für die guten Tipps. Ja so kleinere Nachschlagewerke werde ich mir dann mit den wichtigsten Befehlen selber anlegen. "Alle" werde ich eh über php.net nachgucken müssen.

    Spiele: Darkfall, Manhunt2 (100 % ungeschnitten, 100 % ohne Stasidiktatur)
    Von Spielern für Spieler
    Gegen Aktionäre, Großkonzerne in der Spieleindustrie!


    Fasching statt Amikommerz & Halloween