Anzeige

Aktiv Button mit PHP

Aktiv Button mit PHP | PSD-Tutorials.de

Erstellt von Pixelaner, 28.07.2008.

  1. Pixelaner

    Pixelaner Der Pixelaner

    Dabei seit:
    03.04.2008
    Beiträge:
    261
    Geschlecht:
    männlich
    Ort:
    Essen
    Aktiv Button mit PHP
    Hallo liebe Community,

    es geht um meine Seite die ich derzeit aufbaue. Ich möchte im Hauptmenü einen Aktiv Button einbinden, welcher mir die derzeitige aktive Rubrik anzeigt.

    Biser funktioniert auch alles ganz gut, doch wenn ich die Seite ohne vorhandene Variablen aufrufe wird nichts als Aktiv markiert.

    Quasi müsste von vornherein eine Variable in der Adresszeile übergeben werden. Über andere Lösungen wäre ich natürlich auch äusserst dankbar :)

    Hier mal ein Auszug aus dem Quelltext:

    Code (Text):
    1.  
    2.  
    3. <div id="menu">
    4. <ul>
    5. <li><a href="index.php?cat=Startseite" <? if ($_GET['cat'] == Startseite) { echo "id=\"active\""; } ?>>Startseite</a></li>
    6.  
    7. <li><a href="index.php?cat=Person" <? if ($_GET['cat'] == Person) { echo "id=\"active\""; } ?>>Person</a></li>
    8.  
    9. <li><a href="index.php?cat=Arbeiten" <? if ($_GET['cat'] == Arbeiten) { echo "id=\"active\""; } ?>>Arbeiten</a></li>
    10.  
    11. <li><a href="index.php?cat=Tutorials" <? if ($_GET['cat'] == Tutorials) { echo "id=\"active\""; } ?>>Tutorials</a></li>
    12.  
    13. <li><a href="index.php?cat=Templates" <? if ($_GET['cat'] == Templates) { echo "id=\"active\""; } ?>>CSS Templates</a></li>
    14.  
    15. <li><a href="index.php?cat=Links" <? if ($_GET['cat'] == Links) { echo "id=\"active\""; } ?>>N&uuml;tzliche Links</a></li>
    16.  
    17. </ul>
    18. </div>
    19.  

    Um sich ein Bild zu verschaffen: Der Pixelaner - Webdesign, Mediengestaltung, Tutorials, CSS Templates

    Vielen Dank im vorraus !

    mfg Pixelaner
     
    #1      
  2. sweetswing

    sweetswing PiXXeLmOuSe

    Dabei seit:
    25.02.2007
    Beiträge:
    89
    Geschlecht:
    weiblich
    Software:
    CS3M-C4D-CD12-MAX
    Aktiv Button mit PHP
    AW: Aktiv Button mit PHP

    mach doch einfach eine abfrage, ob die variable cat gesetzt wurde,
    falls die nicht gesetzt wurde, setzt du sie einfach auf start und machst die dann wieder als aktiv.
    je nachdem wie komplex das menu sein soll...erweiterbar...
     
    #2      
  3. Pixelaner

    Pixelaner Der Pixelaner

    Dabei seit:
    03.04.2008
    Beiträge:
    261
    Geschlecht:
    männlich
    Ort:
    Essen
    Aktiv Button mit PHP
    AW: Aktiv Button mit PHP

    Ersteinmal vielen dank für die schnelle Antwort. Ich bin in PHP leider nicht so bewandert :)

    Wie kann ich mir die Abfrage vorstellen ?

    Code (Text):
    1. if (!empty($_GET['cat'])) { $cat = "Startseite"; }
     
    #3      
  4. sokie

    sokie Mod | Web

    Dabei seit:
    23.03.2008
    Beiträge:
    5.338
    Geschlecht:
    männlich
    Ort:
    Bünde NRW
    Software:
    <br>COREL <br> Texteditor
    Aktiv Button mit PHP
    AW: Aktiv Button mit PHP

    Code (Text):
    1. <?
    2. if (isset($_GET['cat'])){
    3.   $cat = $_GET['cat'];
    4.   } else {
    5.   $cat = "Startseite";
    6.   }
    7. ?>
     
    #4      
  5. Pixelaner

    Pixelaner Der Pixelaner

    Dabei seit:
    03.04.2008
    Beiträge:
    261
    Geschlecht:
    männlich
    Ort:
    Essen
    Aktiv Button mit PHP
    AW: Aktiv Button mit PHP

    Ich habe den obrigen Code nun auf der Seite eingebunden, doch leider ignoriert er es. Das "Aktiv"-Stylesheet wird für den Link nicht geladen.
     
    #5      
  6. Christoph680

    Christoph680 Philipp Christoph

    Dabei seit:
    30.04.2006
    Beiträge:
    414
    Geschlecht:
    männlich
    Ort:
    Oberhausen-Rheinhausen
    Aktiv Button mit PHP
    AW: Aktiv Button mit PHP

    und wieder einmal, nicht einfach sinnlose Copy&Paste Aktionen starten...
    bei deiner Seite wird die Get Variable abgefragt, nicht die $cat, folglich wird auch keine aktiv-id ausgegeben.. machs einfach ein wenig anders:

    Code (Text):
    1.  
    2. if (!isset($_GET['cat'])){
    3.   $_GET['cat'] = "Startseite";
    4. }
    5.  
    6.  
    genauso würde ich dringendst meine String auch in Anführungszeichen setzen, da diese sonst später mal womöglich fälschlicherweise als Konstanten interpretiert werden könnten.
     
    #6      
  7. Pixelaner

    Pixelaner Der Pixelaner

    Dabei seit:
    03.04.2008
    Beiträge:
    261
    Geschlecht:
    männlich
    Ort:
    Essen
    Aktiv Button mit PHP
    AW: Aktiv Button mit PHP

    Hallo Christoph,

    die "sinnlosen" Copy & Paste Aktionen würden nicht zustande kommen, wenn ich Erfahrung mit PHP Hätte. Folglich bleibt mir nichts anderes übrig als stupides Kopieren und Einfügen. Trotz alledem hat deine Variante funktioniert und danke dir dafür.


    mfg Pixelaner
     
    #7      
  8. sokie

    sokie Mod | Web

    Dabei seit:
    23.03.2008
    Beiträge:
    5.338
    Geschlecht:
    männlich
    Ort:
    Bünde NRW
    Software:
    <br>COREL <br> Texteditor
    Aktiv Button mit PHP
    AW: Aktiv Button mit PHP

    Hallo Pxelaner,
    nach meinemoben geposteten Beispiel müsste deine Abfrage dann:
    Code (Text):
    1.  
    2. <? if ($cat == Startseite) { echo "id=\"active\""; } ?>
    3.  
    lauten.

    nochmal zu dem Code:
    Code (Text):
    1.  
    2. <?
    3. if (isset($_GET['cat'])){
    4.   $cat = $_GET['cat'];
    5.   } else {
    6.   $cat = "Startseite";
    7.   }
    8. ?>
    9.  
    der Inhalt von "$_GET['cat'] wird, wenn vorhanden, in die Variable $cat geschrieben, wenn nicht, dann wird die Variable $cat einfach mit dem Wert "Startseite" belegt.

    folglich muss nun in der Auswertung auch die Variable $cat auf ihren Inhalt überprüft werden.
     
    #8      
  9. Pixelaner

    Pixelaner Der Pixelaner

    Dabei seit:
    03.04.2008
    Beiträge:
    261
    Geschlecht:
    männlich
    Ort:
    Essen
    Aktiv Button mit PHP
    AW: Aktiv Button mit PHP

    Hallo sokie,

    vielen Dnak nochmal. Ich habe mich für den Code vonChristoph680 entschieden, da er auf Anhieb funktionierte. Vom logischen her sollte es bei deinem auch keine Probleme geben. Keine Ahnung wieso es nicht klappte :)
     
    #9      
x
×
×
teststefan