Ergebnis 1 bis 10 von 10

Thema: mit php eine Klasse setzen funktioniert nicht.

  1. #1
    HTML Newbie
    Registriert seit
    23.06.2012
    Beiträge
    6
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard mit php eine Klasse setzen funktioniert nicht.

    Hi, Ich habe fogende Situatuon. Ich habe meine Navigation ausgelagertm, und möchte, dass die Unterseite, jeweils die Schriftfarbe des Menüpunkts, von dem sie ausgeht schwarz färbt. Also habe ich eine class namens selected in meinem style.css definiert. Nun habe ich in der ausgelagerten Navigation, die class zum test eingesetzt. Ergebnis es funktioniert. Da aber natürlich nur der richtige Menüpunkt schwarz sein soll, wird es später daraufhinauflaufen, dass ich eine Variable in der Unterseite abfrage, und anhand derer den schwarz zu färbenden Menüpunkt kennzeichne sprich, ich schreibe mit php eine if anweisung, welche wenn die Variable übereinstimmt, den Menüpunkt schwarz färbt. hier ein beispiel, wie meine Navigation aufgebaut ist, und wo die classe steht (immoment nur bei Tutorials eingefügt zum test)-> so funktioniert es, d.h. Tutorials ist immer schwarz (logischer weise)

    PHP-Code:

            
    <div id="navi">
            
              <
    ul>
                <
    li>
                  <
    class="navilink" href="[var.domain]"><span>1</spanHome</a>
                  <
    div>
                    [
    onload;file=[var.domain]/subnavi/sub1.tpl]
                  </
    div>
                </
    li>
                
                 <
    li
                     
    class= "selected"
              
    >
              <
    class="navilink" href="[var.domain]"><span>4</spanTutorials</a>
                  <
    div>
                    [
    onload;file=[var.domain]/subnavi/sub4.tpl]
                  </
    div>
                </
    li>
                 
              </
    ul>
            </
    div
    Nun kommt das php ins Spiel, ich habe wie gesagt auf der Unterseite eine Variable namens $category, welche ich in dem Fall den Wert tut zugefügt habe. Es müsste jetzt ein php-part eingefügt werden, der abfragt, ob die Variable §category den Wert tut hat, und wenn ja, dass dann die class gesetzt wird. Das erste Problem taucht nun schon auf, wenn ich mit php die class setzen will. Also ohne if, sondern nur setzen. Ich habe nach viel recherschieren die verschiedensten Sachen probiert, aber im großen und ganzen sollte es zumindestens entweder so:
    PHP-Code:

    <?php
        
    echo 'class= "selected"'
        
    ?>
    oder so:
    PHP-Code:

    <?php
        
    echo "class= /"selected/""
        
    ?>
    gehen. Das Ergebnis, ist aber, dass nichts passiert.
    Was vlt jemand eine andere Möglichkeit, wie man den genutzen Menüpunkt markiert, oder mit php die class hinzufügen kann?

    MFG
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!

  2. #2
    Bandit
    Gast

    Standard AW: mit php eine Klasse setzen funktioniert nicht.

    PHP-Code:
    <div id="navi">
      <ul>
         <li <?php if ($category == "home") echo 'class="selected"'?>>
            <a class="navilink" href="[var.domain]"><span>1</span> Home</a>
            <div>
              [onload;file=[var.domain]/subnavi/sub1.tpl]
            </div>
         </li>
         <li <?php if ($category == "tut") echo 'class="selected"'?>>
            <a class="navilink" href="[var.domain]"><span>4</span> Tutorials</a>
            <div>
              [onload;file=[var.domain]/subnavi/sub4.tpl]
            </div>
         </li>
      </ul>
     </div>

  3. #3
    HTML Newbie
    Themenstarter

    Registriert seit
    23.06.2012
    Beiträge
    6
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: mit php eine Klasse setzen funktioniert nicht.

    diesen code hatte ich auch geschrieben gehabt, das ergebnis ist folgendes wenn dus mal sehen willst.
    dein code nochmal eingefügt:
    man beachte dieses Zeichen: ">" auf der rechten seite.
    Navigation-falsch.jpg

    wie es aussehen sollte (classe wurde einfach ohne php - code eingesetzt)
    navirichtig.jpg

    die schrift ist weiß und der pfeil ist unter tutoriasls.
    Geändert von aragonthebest (23.06.2012 um 17:15 Uhr)

  4. #4
    Bandit
    Gast

    Standard AW: mit php eine Klasse setzen funktioniert nicht.

    Mit Bildern kann man nichts anfangen. Den aktuellen Quellcode und den Link zur Seite könnten wir gebrauchen.

  5. #5
    HTML Newbie
    Themenstarter

    Registriert seit
    23.06.2012
    Beiträge
    6
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: mit php eine Klasse setzen funktioniert nicht.

    Ok. Also die Testseite heißt: www.webtest.de.ht (<-sehr originell ) - sollten fehlermeldungen kommen, ich weiß nicht woran es liegt, mal gehts mal nicht, auch wenn ich nichts ändere. VLT liegts auch an mir. kp- die seite wird aber mehr oder weniger richtig angezeigt.
    Da es aufgrund dieses anzeigefehler durch das ">"-Zeichen zu verschiebung des Untermenüs kommt, lasst sich die einzige verlinkte Unterseite nicht mehr anklicken. Aus diesem grund hier der Link: www.webtest.de.ht/C4DTUT.php

    den Quelltext, der Navigation wie er am schluss sein sollte theoretisch (und im moment auch praktisch-bei einem Vergleich des quelltextes mit dem quelltext oben, sollte auffallen, dass ich die unternavigation wieder eingelagert habe.
    PHP-Code:

    <div id="navi">
              <ul>
                <li>
                  <a class="navilink" href=""><span>1</span> Home</a>
                  <div>
                        <ul>
                            <li><a href="index.php"><span>1.1</span> News</a></li>
                            <li><a href="www.aragonthebest.forumieren.com"><span>1.2</span> Forum</a></li>                   
                        </ul>
                  </div>
                </li>
                <li>
                  <a class="navilink" href=""><span>2</span> Projects</a>
                  <div>
                           <ul>
                              <li><a href=""><span>2.1</span> UDK - Land</a></li>
                             <li><a href=""><span>2.2</span> Cinema 4d - Animationsfilme</a></li>
                              <li><a href=""><span>2.3</span> Project 3</a></li>
                              <li><a href=""><span>2.4</span> Project 4</a></li>
                              <li><a href=""><span>2.5</span> Project 5</a></li>                      
                        </ul>
                  </div>
                </li>
                <li>
                  <a class="navilink" href=""><span>3</span> Specials</a>
                  <div>
                        <ul>
                              <li><a href=""><span>3.1</span> Filme</a></li>
                              <li><a href=""><span>3.2</span> Spiele/ Mods</a></li>
                              <li><a href=""><span>3.3</span> GFS</a></li>
                              <li><a href=""><span>3.4</span> Special 4</a></li>
                              <li><a href=""><span>3.5</span> Special 5</a></li>                      
                        </ul>                
                  </div>
                </li>
                 <li <?php if ($category == "tut") echo 'class="selected"'?>>
                  <a class="navilink" href=""><span>4</span> Tutorials</a>
                  <div>
                        <ul>
                              <li><a href="C4DTUT.php"><span>4.1</span> Cinema 4d</a></li>              
                              <li><a href=""><span>4.2</span> Unreal Development Kit</a></li>
                              <li><a href=""><span>4.3</span> Terragen 2</a></li>
                              <li><a href=""><span>4.4</span> Adobe Photoshop</a></li>
                              <li><a href=""><span>4.5</span> HTML, PHP, CSS</a></li>                      
                        </ul>
                              
                  </div>
                </li>
                 
              </ul>
            </div>
            <div class="subnavi"></div>
    der Quelltext der Unterseite "C4DTUT" ist:

    PHP-Code:

    <?php
          $category
    ['tut'];
          
    $title['Cinema 4D'];
          
    $metadescription 'In dieser Kategorie befinden sich Tutorials für Cinema 4D.';
          include(
    'overallheader.php');
         
          include(
    'overallfooter.php');
          
    $TBS->LoadTemplate('C4DTUT.tpl'FALSE);
          
    $TBS->Show();
        
    ?>
    und jetzt noch das style.css (der bereich der Navigation)

    PHP-Code:

    #navi
    {
        
    background-imageurl(immage/navi.png); /*Navigationsleisten*/
        
    background-repeatrepeat-x;
        
    background-color#aba499;
        
    height41px/*Höhe der Navigationsleiste*/
    }   

    #navi span /* span = InlineObjekte: Kein Zeilenumbruch wie bei div, sondern gleiche Zeile*/
    {
        
    color#c1bcb4; /*Farbei der Themennummern - bzw Farbe aller Texte, in der Navigation, welche mit dem span-Tag gekennzeichnte sind*/
    }
        
    #navi ul /*Einstellungen zur Liste, welche das Menü darstellt*/
    {
        list-
    style-typenone/*Listenpunkt wird entfernt*/
        
    margin0/*Standardabstände werden auf 0 verändert*/
        
    padding0;
    }
        
    #navi li
    {
        
    displayinline/*Liste wird vertikal statt horizontal*/
    }
       
     
    #navi #corner_left
    {
        
    width2px;
        
    height40px;
        
    background-imageurl(immage/rechtenavi.png);
        
    background-repeatno-repeat;
        
    floatleft/*Platziert die linke Navigationsgrafik (schöne abrundung oben) in der gleichen Zeile (float) ganz Links - Navigtionsleiste platziert sich dann in der Mitte*/
    }
       
    #navi #corner_right
    {
        
    width2px;
        
    height40px;
        
    background-imageurl(design/linkenavi.png);
        
    background-repeatno-repeat;
        
    floatright/*Platziert die rechte Navigationsgrafik (schöne abrundung oben) in der gleichen Zeile (float) ganz Rechts - Navigationsleiste platziert sich dann in der Mitte*/
    }
         
    a.navilink /*Mit dieser Klasse wurden alle Menüpunkte belegt, welche alle Links sind*/
    {
        
    font-size20px;
        
    color#e6e6e6; /*Farbe der Menüpunkte*/
        
    margin-left0;
        
    padding8px 15px 10px 15px/*Innenabstände*/
        
    floatleft/*-----------------*/
    }

    a.navilink:hover /*Veränderung der Menüpunkte beim Überfahren mit der Maus*/
    {
        
    color#ffffff; /*Sie werden Weiß*/
        
    backgroundurl(immage/naviarrowhover.pngno-repeat 5033px/*Es erscheint eine Grafik (Pfeil) in der Mitte des Links (50%) auf der höhe 30 px.*/
    }

    .
    subnavi /*Untermenü-Klasse*/
    {
        
    background-color#d9d6d1; /*Hintergrund des Untermenüs*/
        
    padding5px 30px/*Innenabstände für den Text im Untermenü */
        
    height120px/* Höhe des Untermenüs. Die Gesamthöhe beträgt 130 px*/
    }
        
    .
    subnavi span /*alle mit dem Span-Tag belegten Elemente im Untermenü erhalten folgende Eigenschaften*/
    {
         
    padding-right10px/*Sie Haben einen Rechtsabstand von 10px*/
    }
       
    #navi li div /*Untermenü-liste-eigenschaften (die Liste befindet sich in der Box (div))*/
    {
        
    positionabsolute;
        
    margin41px 0 0 0/*Der Text begint mit x-px abstand von oben*/
        
    padding10px 20px/*nochmal x-px abstand bis der Text beginnt */
        
    width940px/*maximale Textbreite*/
        
    height110px/*maximale "Höhe" des Textes*/
        
    left: -999em;  /*der Text befindet sich weit weg*/
        
    background-color#d9d6d1; /*Die Hintergrundfarbe des Textes entspricht der Hintergrundfarbe des Untermenüs*/
        
    font-size12px/*Schriftgröße des Textes*/
    }
        
    #navi .selected a.navilink /*hinzugefügte Eigenschaften für das Ausgewählte/ Angeklickte Hauptmenü*/
    {
        
    color#ffffff; /*Es die Schriftfarbe wird Schwarz*/
        
    backgroundurl(immage/naviarrow.pngno-repeat 5033px/* Es erscheint ein Pfeil in der Mitte des Menülinkes auf einer Höhe von 30px*/
    }
        
    #navi .selected div /*Das selektierte div element wird für die Unternavigation eingeblendet, indem die Position auf 0 Pixel gesetzt wird. !important überschreibt zuvor definierte Eigenschaften*/
    {
        
    displayblock !important;
        
    left!important;
    }
        
    #navi li:hover div /*Das überfahrene div element, wird für die Unternavigation eingeblendet, durch den z-index wird das eingeblendete div überschrieben*/
    {
        
    displayblock;
        
    left0;
        
    z-index1;
    }
        
    #navi li div span /* Definiert neue eigenschaften für die mit span markierten elemente in der div box in einer liste der id "navi". Alternativ würden die spanmarkierten Textpassagen die Eigenschaften aus dem span-tag, welcher für die ganze id-navi definiert wurde erben. Hierbei handelt es sich um den Text im Untermenü*/
    {
        
    color#98948e; /*Farbänderung*/
        
    padding-right10px/*Abstand nach Rechts*/
    }
        
    #navi li div a /* Link-Eigenschaften für Links im Untermenü*/
    {
        
    padding5px/* Abstand von 5 px in alle richtungen zum nächsten Link*/
    }
       
    #navi li div ul /* Ausrichtung für die Liste im Untermenü*/
    {
        
    floatleft;
    }
        
    #navi li div li /*Liste im Untermenü wird untereinander geschrieben*/
    {
        
    displayblock;
        
    padding-bottom5px;

    Geändert von aragonthebest (23.06.2012 um 17:53 Uhr)

  6. #6
    Bandit
    Gast

    Standard AW: mit php eine Klasse setzen funktioniert nicht.

    Da wirst du mal nachsehen müssen, wie du in dein Template/CMS-System Variablen einbauen kannst. Dein Menü wird nur durch den Template-Parser gejagt und deshalb steht der PHP-Code am Ende im HTML-Code

  7. #7
    HTML Newbie
    Themenstarter

    Registriert seit
    23.06.2012
    Beiträge
    6
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: mit php eine Klasse setzen funktioniert nicht.

    ok, ich bin sowieso grad dabei von diesem tamplete sytem wegzukommen. Es gibt 0 Support dafür, und das sollte eigentlich alles auch mit php und der include funktion gehen oder?

    oder meinst du, dass ich den php code in eine Variable meiner tamplate engine scheiben soll?

  8. #8
    Bandit
    Gast

    Standard AW: mit php eine Klasse setzen funktioniert nicht.

    Wenn du vom Template-System weg willst, dann mach das. Ich würde dann keine Zeit mehr in dieses Problem investieren.

  9. #9
    HTML Newbie
    Themenstarter

    Registriert seit
    23.06.2012
    Beiträge
    6
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: mit php eine Klasse setzen funktioniert nicht.

    ich bin weg vom template system, aber es klappt trotzdem nicht

    ich werd jetzt nochmal ein bisschen rumprobieren (immerhin ist der Fehler weg, das ">" <-dieses Zeichen; alles verschoben hat weil, wie du mir erklärt hast, der php code durch das template gejagt wurde und dabei verloren gegengen ist. Wahrscheinlich ist es irgendein klitzekleiner Fehler. Mal sehen. Vielen Dank für deine hilfe übrigens.

    Das ist der Code der index.php
    PHP-Code:

    <?php
          $title 
    'Home';
          
    $metadescription 'Dies ist die Startseite.';
          include(
    'overallheader.php');
          include(
    'indexcontent.php');
          include(
    'overallfooter.php');
          
        
    ?>
    Das ist der Code der Unterseite:

    PHP-Code:
    <?php
          $category
    ['tut'];
          
    $title['Cinema 4D'];
          
    $metadescription 'In dieser Kategorie befinden sich Tutorials für Cinema 4D.';
          include(
    'overallheader.php');
          include(
    'C4DTUTcontent.php');
          include(
    'overallfooter.php');
      
    ?>
    in overallheader.php wird die navi geladen. Wie man sieht habe ich in der unterseite die Variable $category deklariert.

    Nun kommt der Navigationsteil auf die Menüpunkte Home und Tutorials reduziert.
    PHP-Code:

    <div id="navi">
              <span id="corner_left"></span><span id="corner_right"></span>
              <ul>
                <li>
                  <a class="navilink" href="index.php"><span>1</span> Home</a>
                  <div>
                        <ul>
                            <li><a href="index.php"><span>1.1</span> News</a></li>
                            <li><a href="www.aragonthebest.forumieren.com"><span>1.2</span> Forum</a></li>                   
                        </ul>
                  </div>
                </li>
                
                 <li <?php if ($category == "tut") echo 'class="selected"'?>>
                   <a class="navilink" href=""><span>4</span> Tutorials</a>
                  <div>
                        <ul>
                              <li><a href="C4DTUT.php"><span>4.1</span> Cinema 4d</a></li>              
                              <li><a href=""><span>4.2</span> Unreal Development Kit</a></li>
                              <li><a href=""><span>4.3</span> Terragen 2</a></li>
                              <li><a href=""><span>4.4</span> Adobe Photoshop</a></li>
                              <li><a href=""><span>4.5</span> HTML, PHP, CSS</a></li>                      
                        </ul>
                              
                  </div>
                </li>
                 
              </ul>
            </div>
    Außerdem wird der Title nicht angezeigt, obwohl die Variable $title unter der Variable $category (oder über) deklariert wurde und hier eingesetz (ebenfalls ein Ausschnitt aus der overallheader.php

    PHP-Code:

    <head>
          <title><?php $title ?></title>
          <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
          <meta name="Description" content="<?php $description ?>" />
          <link rel="stylesheet" type="text/css" href="style.css" media="screen" />
        </head>
    Geändert von aragonthebest (23.06.2012 um 18:54 Uhr)

  10. #10
    HTML Newbie
    Themenstarter

    Registriert seit
    23.06.2012
    Beiträge
    6
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: mit php eine Klasse setzen funktioniert nicht.

    so jetzt klappt es. Bei den Variablen waren noch Klammern drum. Diese existierten nur für das Template. Bei php mussten sie weg. D.H. Es klappt Juhuu. Danke @Bandit

Ähnliche Themen

  1. Antworten: 0
    Letzter Beitrag: 16.11.2010, 02:20
  2. IE6, wie definiere ich eine Klasse?
    Von mephisto2k im Forum HTML & CSS Forum
    Antworten: 10
    Letzter Beitrag: 21.08.2010, 14:47
  3. Tag automatisch eine klasse zuweisen
    Von Unregistriert im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 19
    Letzter Beitrag: 03.08.2009, 17:48
  4. Dreamweaver: Eine Klasse optional gestalten??
    Von im Forum HTML & CSS Forum
    Antworten: 0
    Letzter Beitrag: 28.04.2006, 01:59
  5. kann Tabellenränder nicht 0 setzen
    Von Hannes im Forum HTML & CSS Forum
    Antworten: 5
    Letzter Beitrag: 31.08.2005, 13:23

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •