Sunny: Tabellenzelle in Abhängigkeit zum Dateinamen formatieren?

Beitrag lesen

Hallo!

Sorry, ich hatte den Link übersehen, ich hätte mir den Quelltext auch selbst holen können.

So sieht die M1.php derzeit noch aus, ohne die Änderungen vom Matthias:

<!-- Das ist interessant, hier klinken wir uns mal per PHP ein

<td id="m"><a href="AVG.php" target="_self" id="r">AVG</a></td>
  <td id="m"><a href="BOB.php" target="_self" id="r">BOB</a></td>
  <td id="m"><a href="DB.php" target="_self" id="r">DB</a></td>
  <td id="m"><a href="ERB.php" target="_self" id="r">ERB</a></td>
  <td id="m"><a href="HEX.php" target="_self" id="r">HEX</a></td>
  <td id="m"><a href="ME.php" target="_self" id="r">ME</a></td>
  <td id="m"><a href="NEB.php" target="_self" id="r">NEB</a></td>
  <td id="m"><a href="NOB.php" target="_self" id="r">NOB</a></td> -->
  <?PHP
    // Dateinamen ohne Endung ermitteln
    $arrFileName = explode('.', $_SERVER['PHP_SELF']);
    // Alle Linktexte der ersten Zeile
    $arrTargets = array('AVG', 'BOB', 'DB', 'ERB', 'HEX', 'ME', 'NEB', 'NOB');
    // Einen "Rohling" zur Ausgabe einer Zelle definieren
    $strLinkRaw = '<td><a href="%s" target="_self" class="%s">%s'."</a></td>\n";
    // Das Array mit den Linktexten durchlaufen
    foreach($arrTargets as $strValue){
      // ...und den Linktext zusammen mit Linktext+Endung ".php" als Dateinamen ausgeben
      printf($strLinkRaw,
             htmlentities($strValue).'.php',
             // Ausserdem entscheiden welche Klasse angegeben werden soll - abhängig von der aufgerufenen Datei
             (($arrFileName[0] == $strValue) ?
                                               'dye' :
                                               'nodye'),
             htmlentities($arrFileName[0]));
    }
  ?>


>   
> Dasselbe analog für die zweite Zeile oder man könnte es auch einbauen. Dazu ein bisschen CSS  
>   
> ~~~css
  

> .dye {  
>   background-color: grey;  
> }  
> .nodye {  
>   background-color: white;  
> }  
> 

Jetzt bekommt immer die Zelle die Klasse "dye" verpasst deren Dateiname aufgerufen wurde solange Inhalt = Dateiname ohne Endung. Der Inhalt kommt dabei aus dem Array "$arrTargets".

Es geht sicher noch schöner aber das ist zumindest ein brauchbares Grundgerüst um anhand des Dateinames einem Element eine Klasse zuzuordnen.

Irgendwas passt da nicht, kriege ne Fehlermeldung beim Seitenaufruf:
Parse error: syntax error, unexpected '?' in /mnt/web5/b1/60/52149560/htdocs/2/Statistik/Deutschland/2013/M1.php on line 41

In M1 Zeile 41 steht aber nur das Fragezeichen ...