3Bilder nebeneinander

  • Themenstarter Themenstarter starfoxfs
  • Beginndatum Beginndatum
S

starfoxfs

Hallo zusammen,

Ich habe in der Mysql Datenbank Bildernamen und Ordnernamen der jeweiligen Bilder gespeichert. Ich möchte alle Bilder anzeigen lassen jedoch soll nach 3 Bildern eine nächste Zeile angefangen werden was ich allerdings nicht wirklich hinbekomme.

Der Anhang unten zeigt wie ich es haben möchte allerdings werden hier immer 3 gleiche Bilder in einer Zeile angezeigt.

PHP:
$abfrage4 = "SELECT * FROM bilder WHERE NPL = '$bildcode' AND TYP = '" .$idkey["TYP"]. "'";
$ergebnis4 = mysql_query($abfrage4);
while ($bilder = mysql_fetch_array($ergebnis4))
{

$number = count($modell); 
$rows = floor($number + 3); 

echo "<tr>";
for($j = 0; $j < 3; $j++) {
echo "<td align='center'>";

echo "<img border='0' src='pictures/" .$bilder["NPL"]."/" .$bilder["NPLBLK"].".jpg'>";


echo "</td>";
}
echo "</tr>";


}

?>
 

Anhänge

  • 1.JPG
    1.JPG
    6,2 KB · Aufrufe: 11
Du meinst ohne den Counter sprich dann

PHP:
<td width="33%"></td>
<td width="33%"></td>
<td width="33%"></td>
 
Dein Ansatz ist schon ganz richtig, nur ein bischen ungeschickt gelöst ;)
Das Problem bei deinem Ansatz ist, dass du innerhalb der while schleife mit einer for Schleife 3 mal das selbe Ergebnis ausgeben lässt. Probier es mal so:
PHP:
<?php
$abfrage4 = "SELECT * FROM bilder WHERE NPL = '$bildcode' AND TYP = '" .$idkey["TYP"]. "'";
$ergebnis4 = mysql_query($abfrage4);
$j = 1;
echo "<table>";
echo "<tr>";
while ($bilder = mysql_fetch_array($ergebnis4))
{

$number = count($modell); 
$rows = floor($number + 3); 

if ($j == 3) {
   echo "</tr>";
   echo "<tr>";
   $j = 0;
}
echo "<td>";

echo "<img border='0' src='pictures/" .$bilder["NPL"]."/" .$bilder["NPLBLK"].".jpg'>";
echo "</td>";

$j++;
}
echo "</tr>";
echo "</table>";
?>

Hoffe, es sind keine Flüchtigkeitsfehler drin ;)
vG
David


EDIT: Tabelle im code geschlossen
 
Hab ich schon probiert funktioniert nicht

Problem ist:

Angezeigt wird

Bild1 Bild1 Bild1
Bild2 Bild2 Bild2
Bild3 Bild3 Bild3
.
.
.

Angezeigt werden soll:
Bild1 Bild2 Bild3
Bild4 Bild5 Bild6
usw...
 
Müsste so eigentlich funktionieren, da ja jetzt die for Schleife innerhalb der while schleife weg ist.
 
Ich meine eine richtige Liste:
PHP:
echo '<ul class="gallery">';
while( $bilder = mysql_fetch_array($ergebnis4) ) {
	echo '<li><img border="0" src="pictures/' .$bilder["NPL"].'/' .$bilder["NPLBLK"].'.jpg"></li>';
}
echo '</ul>';
Die kannst du dann mit CSS wunderbar formatieren, beispielsweise:
Code:
ul.gallery {
	list-style: none;
	padding: 0;
}
ul.gallery li {
	float: left;
	witdh: 33.3%;
}
 
Zurück