PHP Tabellen <tr> einfügen

Brian Folte

Angesehenes Mitglied
Hallo, habe folgendes Problem. Ich möchte meine tabelle nach 3 <td> nebeneinandern das automatisch ein <tr> eingefügt wird.

Ich verzweifel schon weil irgendwie bekomme ich dies nicht hin.

Die tabelle wird so ausgelesen:
CODE
<table>
<tr><td>Datenbankinhalt</td></tr></table>



Nun sollen aber max. drei Datenbankinhalte nebeneinander stehen.

Über jede Hilfe wäre ich sehr Dankbar.

LG Bian
 
Verstehe ich das richtig

du bekommst z.b. 1000 werte und willst dass dann in 333 zeilen und 3 spalten ausgeben,...
 
Nein ich meine das so:
CODE
<table>
<tr>
<td>$titel_aus_der_db</td><td>$bild_aus_db</td>
</tr></table>




Nun soll sich aber die Tabelle max. 3 mal nebeneinander wiederholen und dann eine Zeile tiefer wieder anfangen.

Damit ihr genau wisst was ich meine www.dhd24.com stehen auf der Startseite die Top Anzeigen und genau sowas meine ich.

LG Brian

 
am sinnvollsten machst du das ganze mit Arrays und Schleifen. Je nachdem wie deine Daten vorliegen kannst du dann bequem dein ganzes Array in einer Foreach-Schleife abfeiern und für die 3 TDs immer eine Laufvariable übergeben.
In etwa so:
CODE
Foreach ($array as $key => $value) {
echo "<tr>\r\n";
For ($x = 0; $x < 3; $x++){
echo "<td>".$value."<td>\r\n";
}
echo "</tr>\r\n";
}


EDIT: ich seh grad, das das wohl doch nicht so ganz passt. Hab leider grad keine Zeit es nochmal schicker zu machen. Ich hoffe aber, das die Sache halbwegs verständlich ist...
smile.gif
 
voll easy
smile.gif


CODE
echo'<table><tr><th>Title</th><th>Bild</th><th>Download</th></tr>';


while($row = mysql_fetch_array($result)){
echo '<tr>';
echo '<td>'.$row['db_title'].'</td>';
echo '<td>'.$row['db_image'].'</td>';
echo '<td>'.$row['db_link'].'</td>';
echo '</tr>';
}
echo'</table>';



solltest du den inhalt schon in einem array haben dann benutze eine foreach-schleife mit laufvariable oder eine for-schleife
bei beiden schleifen kannst du dann mit modulo arbeiten oder machst eine simple ifanweisung wie if($i == 3)
 
CODE echo '<table>';
$i=0;
$cells=3;
while($row = mysql_fetch_array($result)){
if($i%$cells==0) echo '<tr>';
echo '<td>'.$row['content'].'</td>';
if(++$i%$cells==$cells) echo '</tr>';
}
if($i%$cells!=0) echo '<td colspan="'.($cells-($i%$cells)).'"> </td>';
echo '</tr>';
echo '</table>';

Ungetestet

Grüße
 
Zurück
Oben