DB Ausgabe nebeneinander 4x Tabelle

Shooter2k

Erfahrenes Mitglied
Hallo Forum,
ich möchte Daten aus der DB nebeneinander ausgeben.
Es sollen je 4 Datensätze pro Reihe ausgegeben werden und danach soll eine neue Zeile beginnen + weitere 4 Datensätze. Ich habe ein ein wenig gegoogelt und das hier gefunden :
PHP:
<?
/*
    Angepasste Modulo-Variante.
    Rückgabe: Boolean
*/
function make_br ($i, $maxzahl) {
    return (($i + 1) % $maxzahl == 0);
}

// Das Array mit den Werten. Alternativ kann natürlich eine Datenbank anstatt
// einem Array als Datenquelle dienen.
$arr = array ('String0', 'String1', 'String2', 'String3', 'String4',
              'String5', 'String6', 'String7', 'String8', 'String9',
              'String10', 'String11', 'String12', 'String13', 'String14',
              'String15', 'String16', 'String17', 'String18', 'String19');

// Maximale Anzahl der Strings, die in einer Zeile ausgegeben werden sollen.
$maxzahl = 4;

// Counter für die Schleife. Wird nach einem Schleifendurchlauf inkrementiert.
$i = 0;

// Schleife läuft über die Länge des Arrays.
// Die Daten werden in folgender Form ausgegeben
// ( String, String, String )
// ( String, String, String )
//
// Die Anzahl der Elemente in einer Reihe wird durch $maxzahl bestimmt.
while ($i < count ($arr)) {
    
    // Wenn im letzten Schleifendurchlauf ein Umbruch gemacht wurde bzw.
    // links leer ist, geben wir die öffnende Klammer aus.
    if (make_br ($i - 1, $maxzahl)) {
        echo '( ';
    }

    // Nun den Array Wert an der Stelle der Schleifenvariable ausgeben
	
	 echo $arr [$i];
  
    // Haben wir nun bereits $maxzahl an Elementen ausgegeben, schreiben wir
    // die abschließende Klammer und setzen einen Zeilenumbruch.
    // Ansonsten schreiben wir als "Trennzeichen" ein Komma.
    if (make_br ($i, $maxzahl)) {
        echo ' ) <br>';
    } else {
        echo ', ';
    }
    
    // Wir sind am Ende der Schleife angelangt und inkrementieren die
    // Schleifenvariable
    $i++;
}
?>
So sieht es live aus : Link
Aber leider ohne Tabelle.

Kann mir jemand weiterhelfen ?
Danke
gruß
henry
 
Hallo,

das gleich Problem hatte ich gestern auch. Habe das dann so gelöst. Gibt bestimmt bessere Lösungen

PHP:
echo "<table><tr>";
	
while($row_bst = mysql_fetch_object($result_bst)){ 
	
$count++;
echo "<td>";
  
...DA DIE AUSGABE REIN...
  
echo "</td>";
if ($count == 4) {
  
echo "</tr>";
echo "<tr>";
$count = 0;
	}
  
 }

  echo "</tr></table>";
 
Zurück