Tabelle mit zwei Tabellenzeilen

campari

Erfahrenes Mitglied
Bei einer Bildgallerie sollen 5 Bilder nebeneinander und darunter der zugehörige Text dargestellt werden, das dann immer wiederholt, also so:
HTML:
    <tr>
    <td><img1></td><td><img2></td>....usw....<td><img5></td>
    </tr>
    <tr>
    <td><text1></td><td><text2></td>....usw....<td><text5></td>
    </tr>
    <tr>
    <td>.....usw


Hab mich so daran gemacht, aber das ergibt nur Schrott:

PHP:
    $zahl = 1;
    echo '<table><tr>';
    while ($row = mysql_fetch_array($result)) {
    echo
    ?>
    <td><img src="<?php echo $row["bild"]; ?>"></td>
    <?php
    $zahl++;
    if ($zahl == 5)
    {
    echo '</tr><tr>';
    }
    echo
    ?>
    <td><a><?php echo $row["text"]; ?>"></a></td>
    <?php
    $zahl++;
    if ($zahl == 5)
    {
    echo '</tr>';
    }
    } // ende while
Komm irgendwie auf keinen grünen Zweig...
Gruss
 
$query von function query_into_array($query) wird irgendwie auch garnet defniert....

Gibts noch andere Vorschläge? *smile*
 
Es ist ziemlich klar das das nur Schrott ausgibt. Du Zeigst ja auch das Bild an, dann den Text, und dann wieder ein Bild, und dann Wieder ein Text. Nur leider geht das nicht so. Du musst verstehen, das HTML von oben nach unten abarbeitet. Das heisst wenn du zuerst ein Bild rausschreibst, dann den Text, und dann möchtest du wieder ein Bild machen, Ist das Bild dann unter dem Text von vorhin. Verstanden?

Mach es doch so:

PHP:
<?php
    echo "<table>";
    for ($zahl = 1;$row = mysql_fetch_array($result);$zahl ++) {
      if ($zahl == 5)
	  	echo "<tr>"

    	//echo Den Echo Brauchst du nicht ;)
    	?>
    	<td><table><tr><td><img src="<?php echo $row["bild"]; ?>"></td></tr>
    	<?php
    		//echo Den auch nicht :P
    	?>
    	<tr><td><a><?php echo $row["text"]; ?>"></a></td></tr></table></td>
    	<?php
    		if ($zahl == 5) {
    			echo '</tr>';
				$zahl = 1;
			}
    } // ende while 
	echo "</table>";
?>

Das Zeusch ist ungetestet. Also Debugen musst du selber :P

MFG
redX
 
Zurück