• Hallo,

    ich habe folgendes Problem und zwar habe ich für meine Website ein html Dokument erstellt, in dem sich das CSS-Navigationsmenü befindet. Damit habe ich alle html Dateien verknüpft, damit ich nicht jede Seite ändern muss, wenn ein neuer Link dazu kommt. Nun habe ich natürlich das Problem mit der active-Funktion. Wenn ich z. B. jetzt von der Startseite auf die Impressumseite wechseln möchte, ist der active-Link immer noch bei der Startseite gesetzt. Gibt es eine Möglichkeit, dieses Problem mit CSS oder Javascript zu lösen?

    Hier ist der Link zu meiner Seite:
    http://lukasvogel.net46.net/

    Vielen Dank schon mal im Voraus. Ich hoffe es wär jemand so nett und hilft mir.

  • ja verzihte ganz auf frames :)

    du kannst mit ganz einfachem php doppelte arbeiten ersparen und die navi inkludieren.
    oder du erstellst dir eine vorlage und kopierst die x mal (für jede seite 1 mal die vorlage)
    alternativ SSI (serverside includes), wenn dein webserver die interpretieren kann, kannst du auch ganz normal html inkludieren.

    ich rate aber am ehesten zu der php-version :)

    das is quasi wie als wenn du deine html-dateien machst, aber per zB

    PHP
    include('navi.php')

    holste dir immer wieder die navigation :)
    mit ein paar weiteren handgriffen kannst du dann schon erkennen auf welcher seite du dich befindest und dementsprechend die navi als aktiv markieren :)

  • Ich habe die include Funktion schon mehrmals ausprobiert. Nur bearbeite ich die Dateien offline und lade sie dann auf den Webserver hoch. Außerdem hat der Server kein SSI. Die Sicherheit der Website ist mir egal. Ich will nur, dass man das sehen kann, was ich will. Nur html und php, keine Datenbank.

  • Auf der Seite von XAMPP gibt's massenhaft Infos, muss man nur mal lesen.

  • na du hast in deinem xampp-installationsordner den ordner htdocs, da hauste nen leeren ordner rein und dann rufste das über localhost/DEINORNDERNAME/ auf.

    und jetzt kannste php und co testen :)

  • ok danke. Da wäre noch etwas: Ich habe jetzt die include-Funktion in jede Datei übernommen, aber die jeweilige Seite wird immer noch nicht als active markiert. Was muss ich jetzt machen?

  • Ermittele mit PHP, auf welcher Seite du gerade bist und passe die Farben dann dynamisch an

  • Leute, Leute, Leute..... Ihr schmeißt uns hier ein paar Brocken hin und wir sollen da was mit anfangen können. :(

    Woher soll ich wissen, was in $page steht und ob 'link1' richtig ist oder du das nur als Beispiel meinst???
    Vom Prinzip her geht das so, ja.

  • Ich hab hier den Quellcode mit den Links:


    <div id='cssmenu' style="width: 964px; z-index: 2; position: absolute; top: 20px; left: 209px">
    <ul style="left: -5px; top: 0px; width: 971px">
    <li class='active'><a href='../index.php' target="_top"><span>Startseite</span></a></li>
    <li class='has-sub'><a href='../events/index.php' target="_top"><span>Veranstaltungen</span></a>
    <ul>
    <li class='has-sub'><a href='../events/koenigsschiessen/index.php' target="_top"><span>K&ouml;nigsschie&beta;en</span></a>
    <ul>
    <li><a href='#'><span>Sub Item</span></a></li>
    <li class='last'><a href='#'><span>Sub Item</span></a></li>
    </ul>
    </li>
    <li class='has-sub'><a href='../events/suds/index.php' target="_top"><span>Sau- und Dorfschie&beta;en</span></a>
    <ul>
    <li><a href='#'><span>Sub Item</span></a></li>
    <li class='last'><a href='#'><span>Sub Item</span></a></li>
    </ul>
    </li>
    <!--
    <li class='has-sub'><a href='../events/sommerschiessen/index.php'><span>Sommerschie&beta;en</span></a>
    <ul>
    <li><a href='#'><span>Sub Item</span></a></li>
    <li class='last'><a href='#'><span>Sub Item</span></a></li>
    </ul>
    </li>
    -->
    </ul>
    </li>
    <li><a href='../rwk/index.php' target="_top"><span>Rundenwettkampf</span></a></li>
    <li><a href='../photos/index.php' target="_top"><span>Fotogalerie</span></a></li>
    <li><a href='../calendar.php' target="_top"><span>Terminkalender</span></a></li>
    <li><a href='../contact.php' target="_top"><span>Kontakt</span></a></li>
    <li class='last'><a href='../impressum.php' target="_top"><span>Impressum</span></a></li>
    </ul>
    </div>


    muss ich dann diesen Code hinter jeden Link einfügen, dass es dann so aussieht?

    <li class='active'><a href='../index.php' <?php if($page == 'index') echo ' class="active"' ?> target="_top"><span>Startseite</span></a></li>

    oder wie geht das?

  • Mutter, hol' mich vonne Zeche, ich kann dat Schwatte nicht mehr sehen :(

    Du sollst dir in deinen Scripten den Wert von $_SERVER['SCRIPT_NAME'] per echo mal ausgeben lassen.