Farbwechsel nach jeder Zeile?

cille

Erfahrenes Mitglied
Hi ho,
ich versuche gerade einen Farbwechsel nach jeder Zeile zu en.
Aber Irgendwie versaut er mir da etwas :(.
Ich würde gerne das nach jeder zelle die 2. Farbe in Kraft Tritt.

So z.B.:

FARBE1 | FARBE1 | FARBE1
FARBE2 | FARBE2 | FARBE2
FARBE1 | FARBE1 | FARBE1
FARBE2 | FARBE2 | FARBE2
usw...

Ich habe schon etwas vorgeleistet:

PHP:
	<?php 
		$i = 0;
		while($data = mysql_fetch_assoc($result01)) { 
			echo "<div class='".($i++ % 2 == 0 ? 'userlisttb01_body01' : 'userlisttb01_body02')."'>".$data["UserID"]."</div>".
				 "<div class='".($i++ % 2 == 0 ? 'userlisttb02_body01' : 'userlisttb02_body02')."'>".$data["Username"]."</div>".
				 "<div class='".($i++ % 2 == 0 ? 'userlisttb03_body01' : 'userlisttb03_body02')."'>".$data["Team"]."</div>".
				 "<div class='".($i++ % 2 == 0 ? 'userlisttb04_body01' : 'userlisttb04_body02')."'>".$data["reg_seit"]."</div>".
				 "<div class='".($i++ % 2 == 0 ? 'userlisttb05_body01' : 'userlisttb05_body02')."'><a href='index.php?site=user&id=".$data["UserID"]."'></a></div>".
				 "<div class='userliststrich'></div>";
		}
	?>

Hier der CSS Code dazu:
HTML:
.userliststrich { height: 2px; clear: both; background-color: #CCCCCC; width: 530px; }
.userlisttb01_body01 { float: left; width: 50px; text-align: center; background-color: #CCCCCC; padding: 4px; }
.userlisttb02_body01 { float: left; width: 150px; text-align: center; background-color: #CCCCCC;  padding: 4px;}
.userlisttb03_body01 { float: left; width: 200px; text-align: center; background-color: #CCCCCC;  padding: 4px;}
.userlisttb04_body01 { float: left; width: 60px; text-align: center; background-color: #CCCCCC;  padding: 4px;}
.userlisttb05_body01 { float: left; width: 30px; background-color: #515151;  padding: 4px;}

.userlisttb01_body02 { float: left; width: 50px; text-align: center; background-color: #999999; padding: 4px; }
.userlisttb02_body02 { float: left; width: 150px; text-align: center; background-color: #999999;  padding: 4px;}
.userlisttb03_body02 { float: left; width: 200px; text-align: center; background-color: #999999;  padding: 4px;}
.userlisttb04_body02 { float: left; width: 60px; text-align: center; background-color: #999999;  padding: 4px;}
.userlisttb05_body02 { float: left; width: 30px; background-color: #999999;  padding: 4px;}

Hoffe es kann mir einer Weiterhelfen.

Sonnige Grüße,
cille
 
Huhu,
habe es hingekrigt, habe einfach nur ein paar dinge getauscht:
So schaut es jetzt aus:

PHP:
		$i = 0;
		while($data = mysql_fetch_assoc($result01)) { 
			echo "<div class='".($i++ % 2 == 0 ? 'userlisttb01_body01' : 'userlisttb01_body02')."'>".$data["UserID"]."</div>".
				 "<div class='".($i++ % 2 == 0 ? 'userlisttb02_body02' : 'userlisttb02_body01')."'>".$data["Username"]."&nbsp;</div>".
				 "<div class='".($i++ % 2 == 0 ? 'userlisttb03_body01' : 'userlisttb03_body02')."'>".$data["Team"]."&nbsp;</div>".
				 "<div class='".($i++ % 2 == 0 ? 'userlisttb04_body02' : 'userlisttb04_body01')."'>".$data["Datum"]."</div>".
				 "<div class='".($i++ % 2 == 0 ? 'userlisttb05_body01' : 'userlisttb05_body02')."'><a href='index.php?site=user&id=".$data["UserID"]."'></a></div>".
				 "<div class='userliststrich'></div>";
		}
 
Ich frage mich grade, nach längerem Hinsehen, warum du dir das so kompliziert machst? Wenn feststeht, dass die erste Zeile Farbe 1 bekommt und die 2. Farbe 2 usw., warum das dann nicht gleich von vornherein festlegen?
 
Es kann passieren, dass es bis zu 1000 Einträge gibt, und diese sollen aber immer mit 2 Farben in wechsel laufen, manuell eingeben ist da doof ^^
 
Aber so wie ich das sehe, müsstest du das doch trotzdem machen, weil du doch dein Array nicht dynamisch ausliest, sondern jedes Feld explizit ansprichst. Oder bin ich schon so sehr in meiner Mittagspause, dass ich hier irgendwas übersehe? :D
 
Mhhh, wenn Du willst kannst mir ja eine einfachere Variante geben. Ich habe leider keine einfacherer gefunden :)
 
Hiho Cille ;)

Ich schreib es mal abgespeckt auf :)

PHP:
while($columns = mysql_fetch_assoc)
{
  foreach($columns as $column)
  {
    echo '<div>'.$column.'</div>';
  }
}
 
Zurück