• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Tab.zeilen verschiedenfarbig

FreddyS

Neues Mitglied
Hallo, ich versuche mit folgendem code die Zeilen einer Tabelle abwechselnd in verschiedenen Farben auszugeben:

PHP:
 function bgcolor($row = 1)
{
    static $i;
    static $col = array('#fffacd',
                        '#f0e68c',
                       ); // etc.
    $bg = $col[(int)($i + .00000001)];
    $i += 1 / $row;
    if ($i >= count($col)) $i = 0;
    return $bg;
}

Ausgabe:
PHP:
printf("<tr bgcolor='%s'>
                       <td><input name='na[$id]' value='"
                        .$datumv . "' size='9'></td>
                       <td><input  name='vo[$id]' value='"
                        .$datumb . "' size='9'></td>
                       <td><input  name='gh[$id]' value='"
                        .$dsatz1["NTURNIER"] . "' size='32'></td>
                      <td><a href='javascript:send(1,$id);'>Sehen</a></td>
                       </tr>\n", bgcolor(1));

Die Tabelle hat 4 Spalten, aber nur die letzte (href "Sehen") wird in abwechselnden Farben gedruckt

Woran kann das liegen
 
danke, werde ich mir ansehen.

aber trotzdem: das ganze muss irgendwie damit zu tun haben, dass die werte per value usw. zugewiesen werden.

gebe ich in der tabelle (siehe nachfolgenden code) einfach konstanten aus, funktioniert es einwandfrei:

PHP:
printf("<tr bgcolor='%s'>
<td>Hallejuhah</td>
<td>Himmel</td>
<td>Hölle</td>
</tr>\n", bgcolor(1));
 
gebe ich in der tabelle (siehe nachfolgenden code) einfach konstanten aus,[...]

ist keine Konstante, sondern einfach nur Text/ein String.

Hat niemand eine erklärung, würde schon gerne die ursache erfahren
Völlig uninteressant, wenn man dadurch die Semantik aufgibt. Mit HTML vergibt man keine Farben oder positioniert Text in eine bestimmte Ecke!

Nutze CSS! Und ich bin immer noch der Meinung, dass man den Spalten eine Farbe zuweist (mit CSS), nicht der Zeile.

Versuche es erstmal mit den Tipps von selfphp.de. Wenn es dann nicht klappt, kannst du gerne nach dem "Warum?" fragen!
 
Zurück
Oben