while Ausgabe mit verschieden Tabellenhintergrundfarben?

dwex

Erfahrenes Mitglied
Hallo Leute,

ich würde gerne mit einer while-Schleife Daten aus einer Datenbank ausgeben.
Das ist mir klar wie das funktioniert.
Jetzt würde ich gerne der Tabelle bei jedem Schleifendurchlauf eine andere Hintergrundfarbe geben und das jeweils abwechselnd.

Also wenn wenn die erste Tabellenzeile weis hinterlegt ist dann soll die 2te z.B. hellgrau hinterlegt sein - dann wieder weis und wieder hellgrau und so weiter.

Ich habe das irgenwo mal gelesen wie das geht finde es aber nicht mehr.
Wer kann helfen?

Vielen Dank im voraus!
 
Benutze zwei unterschiedliche Klassen:
PHP:
<?php

	$i = 0;
	while( … ) {
		$class = ( ++$i % 2 == 0 ) ? 'even' : 'odd';
		echo '<tr class="'.$class.'">';
		…
	}

?>
 
hi!
Einfach die Schleifenvariable mit dem Modulo-Operator % auf gerade oder ungerade prüfen:
5%2 -> 1
4%2 -> 0
und dann entsprechend die Hintergrundfarbe setzen.
Gruß Neph
 
Hallo - vielen Dank erstmal für die schnellen Antworten.

Ganz verstehen tu ich das aber jetzt noch nicht.
Habe es aber jetzt ausprobiert und es funktioniert prima

Könntet Ihr mir das noch kurz erklären was da im Quelltext steht.
Mich würde nur die folgende Zeile interessieren:
PHP:
$class = ( ++$i % 2 == 0 ) ? 'even' : 'odd';
Das $i immer um 1 mehr wird (warum steht das ++ eigentlich davor - ich habe das bisher immer dahinter geschrieben - glaube ich - ist das egal?) ist mir klar und das der Modulo-Operator das Ganze durch 2 teilt und "Gerade" oder "Ungerade" zurückgibt.
Jetzt kommen aber schon die ersten Schwierigkeiten auf.
Warum wird das mit 0 verglichen - was bedeutet das ? und der : genauer (ist der : ein "entweder-oder")

Vielen Dank!
 
Zuletzt bearbeitet:
Du hast es schon fast richtig verstanden: Die Syntax <Ausdruck> ? <Anweisung> : <Anweisung> ist der so genannte ternäre Operator. Dieser entspricht der Logik einer if-Kontrollstruktur (<Bedingung> ? <Anweisung-falls-Bedingung-wahr> : <Anweisung-falls-Bedingung-unwahr>). Dieser ternäre Operator wird insbesondere in Verbindung mit Zuweisungen verwendet.

Zur Erklärung des Prä-Inkrementoperators liest du dir am besten die Beschreibung des PHP-Handbuches durch.
 
Zurück