Spaltenausgabe aus DB mit Modulo-Operator

dwex

Erfahrenes Mitglied
Hallo Leute,

ich stehe mal wieder vor einem (für mich) unlösbaren Problem.

Also ich lese Werte aus einer MySQL-DB aus und schreibe momentan je 2 Werte nebeneinander in eine Zeile einer Tabelle.
Jetzt möchte ich jedoch 3 oder 4 oder 5 oder,oder,oder Werte nebeneinander darstellen - leider komme ich hier nicht weiter.

Hier mein Quelltext für die Anzeige der 2 Werte nebeneinander:
PHP:
$ersetzung .= '<TABLE ID="Tabelle6" BORDER=0 CELLSPACING=3 CELLPADDING=1 WIDTH="100%">';

$i = 0;

while($ds = mysql_fetch_array($abfrage)) {


	if($i%2 == 0) {
    	$ersetzung .= "<TR>";
    }

	$parentid = $ds['categories_id'];


    $ersetzung .= '<TD WIDTH=288><p>';
    $ersetzung .= '<SPAN STYLE="font-size: 12px;"><a href="./hauptkatchange2.php?id='.$ds['categories_id'].'">'.$ds['categories_name'].'</a></span>';
    $ersetzung .= '</p></TD>';



    if($i%2 == 1) {
    	$ersetzung .= "</TR>";
    }

	$i++;

}

$ersetzung .= '</TABLE>';
Wie können ich es nun schaffen, dass beispielsweise 3 Einträge nebeneinander stehen?

Vielen Dank für euer Hilfe im Voraus!
 
Es ist eigentlich ganz einfach: Es soll ja immer dann die Tabellenzeile beendet werden, wenn der höchste mit der Modulo-Operation erreichbare Wert erreicht wurde.
PHP:
$i = 0;
$cpr = 3;

while( $ds = mysql_fetch_array($abfrage, MYSQL_ASSOC) ) {
	if( $i % $cpr == 0 ) {
		$ersetzung .= "<TR>";
	}

	…

	if( $i % $cpr == $cpr-1 ) {
		$ersetzung .= "</TR>";
	}
	$i++;
}
 
Zurück