Christian Kruse: statische Variable für alternierende Zeilenhintergrundfarbe

Beitrag lesen

Hallo,

ich möchte gerne über eine Funktion Tabellenzeilen mit Downloadfiles
ausgeben. Die Hintergrundfarbe soll dabei bei jedem Aufruf der Funktion
wechseln. Neue Tabelle sollen allerdings wieder mit der
Anfangshintergrundfarbe beginnen. Leider hat das Setzen des Parameters
$color keinen Einfluß auf die Hintergrundfarbe. Woran kann das liegen?

Du ueberdeckst durch die lokale Variable '$color' den Parameter.

Die Funktion (vereinfacht):

Schreibs besser so:

function writeRow($file,$description,$col) {
  static $color   = 0;
  static $rowcols = Array('#F7F7F7','#FFFFFF');

if($col) {
    echo '<tr><td bgcolor="'.$col.'"><a href ="'.$file.'">'.$description.'</a></td></tr>');
  }
  else {
    echo '<tr><td bgcolor="'.$rowcols[$color++ % 2].'"><a href ="'.$file.'">'.$description.'</a></td></tr>');
  }
}

Gruesse,
 CK

--
http://sf.net/projects/libtemplate/
http://sf.net/projects/mod-gzip/