• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Was gibt es Schöneres als den Mai draußen in der Natur mit allen Sinnen zu genießen? Lasst uns teilhaben an Euren Erlebnissen und macht mit beim Thema des Monats Da blüht uns was! ---> Klick

Datenbankabfrage in Tabelle ausgeben

FLU

Braeburn
Registriert
29.11.05
Beiträge
44
Hallo allerseits!

Ich habe ein kleines PHP Skript gebastelt mit dem man Daten auf den FTP kopieren kann und zusätlich ein Eintrag in einer MySQL- Tabelle erstellt wird. Nun bastle ich an der Ausgabe der Einträge. Dies funktioniert auch gut bis auf die Darstellung in der Tabelle.

while($zeile = mysql_fetch_assoc($resultat)){
echo
"<tr>
<td><img src='../pictures/testgalleryTN/$zeile[TN].jpg'></td>
</tr>"
}

So, das wäre ja kein Problem so weit! Ich möchte jedoch, dass eine Tabelle mit 5 Spalten und 4 Zeilen gefüllt wird. Im oben gezeigten Bsp. ergibt sich logischerweise ein "Schlange" von vertikal aufgelisteten Bildern.

Ich habe es schon probiert mit einer for-Schleife für die <td> & <tr> zu kombinieren...komme jedoch auf keinen grünen Zweig, da das Bild ja bei jedem Durchgang in der while-Schlaufe erst aktualisiert wird.

Vielleicht kann mir jemand helfen!?

Danke für alle Antworten

Grüsse
 

kinl99

Roter Delicious
Registriert
17.08.05
Beiträge
93
jup...

mach die resultabfrage mit der funktion mysql_fetch_array(), dann kannst du dir dein ergebnis in ein array zurückgeben lassen und ungefähr so anzeigen:

while ($zeile = mysql_fetch_array($resultat))
{
echo
"<tr>
<td><img src='../pictures/testgalleryTN/$zeile[0].jpg'></td>
<td><img src='../pictures/testgalleryTN/$zeile[1].jpg'></td>
<td><img src='../pictures/testgalleryTN/$zeile[2].jpg'></td>
<td><img src='../pictures/testgalleryTN/$zeile[3].jpg'></td>
<td><img src='../pictures/testgalleryTN/$zeile[4].jpg'></td>
</tr>"
}

-kinl
 

FLU

Braeburn
Registriert
29.11.05
Beiträge
44
Super thnx!

Sieht schon viel besser aus!!!

Nur noch ein kleines Problem...es füllt mir nur die 1.Spalte mit Bildern, obwohl ich in der Query definiert habe, dass nur die Spalte "TN" angezeit werden soll, wo sich die Bildinfos befinden...$sql = "SELECT tn FROM pictures;";
der Rest bleibt leer und, wenn ich den HTML-Quellcode anschaue sind die img. Tags einfach mit dem Pfad versehen...

hmmm
 

FLU

Braeburn
Registriert
29.11.05
Beiträge
44
hmm was ich mich gerade noch frage: ich hab ja keine ahnung wieviele bilder in der DB gesperichert sind da das Upload Tool auch ander benutzen können... wenn ich nun

<td><img src='../pictures/testgalleryTN/$zeile[0].jpg'></td>
<td><img src='../pictures/testgalleryTN/$zeile[1].jpg'></td>
<td><img src='../pictures/testgalleryTN/$zeile[2].jpg'></td>
<td><img src='../pictures/testgalleryTN/$zeile[3].jpg'></td>
<td><img src='../pictures/testgalleryTN/$zeile[4].jpg'></td>
schreiben würde (was wie oben schon erwähnt noch nicht richtig funktioniert), würde es ja immer wieder dieselben 4 Einträge listen...oder?

Verdammt viele Fragen, soorry! Ist für ein Schulprojekt und stehe ein wenig unter zeitdruck!

Thnx to all
 

angelone

Dülmener Rosenapfel
Registriert
02.05.04
Beiträge
1.673
PHP:
$referenzen_sql="SELECT * FROM referenzen";
$referenzen_result=mysql_query($referenzen_sql,$conn) or die(mysql_error());
echo "<table align=center border=0 cellpadding=5 cellspacing=0 width=580>
<tr><td><table border=0 width=600 align=center>";
while( $referenzen=mysql_fetch_array($referenzen_result,MYSQL_ASSOC) ) {

echo "<tr><td align=center>";

if( $referenzen['homepage']!="" ) echo "<a href=http://$referenzen[homepage] target=_blank>";
echo "<img border=0 src=../images/referenzen/$referenzen[bild]><br>$referenzen[text]";
if( $referenzen['homepage']!="" ) echo "</a>";

echo "</td>";
$referenzen=mysql_fetch_array($referenzen_result,MYSQL_ASSOC);

if ($referenzen) {
echo "<td align=center>";

if( $referenzen['homepage']!="" ) echo "<a href=http://$referenzen[homepage] target=_blank>";
echo "<img border=0 src=../images/referenzen/$referenzen[bild]><br>$referenzen[text]";
if( $referenzen['homepage']!="" ) echo "</a>";

echo "</td></tr><tr><td colspan=2>&nbsp;</td></tr>";
} else echo "<td align=center>&nbsp;</td></tr><tr><td colspan=2>&nbsp;</td></tr>";

}

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

das macht dir ne tabelle mit 2 spalten
mehrere sollten nit schwer sein
 

bluba

Bismarckapfel
Registriert
10.06.04
Beiträge
144
Hier eine kleine einfache Lösungsidee, die man bestimmt noch verbessern kann, aber vielleicht ein Anfang:
PHP:
//wieviele Spalten sollen pro Zeile maximal erzeugt werden 
$spaltenMax = 5;
$zaehler = 0;
echo "<table border=\"0\" cellpadding=\"5\">\n";
echo "<tr>\n";
while ($zeile = mysql_fetch_array($resultat)) {
	if($zaehler >= $spaltenMax) {
		echo "</tr><tr>\n"; 
		$zaehler = 1;
	}else{
		$zaehler++;
	}
	echo '<td>';
	echo '<img src="../pictures/testgalleryTN/'.$zeile['TN'].'" />';
	echo "</td>\n";	
}
echo "</tr>\n";
echo "</table>\n";
Erreicht der Zähler die Maximale Spaltenanzahl, wird eine neue Spalte erstellt und der Zähler wieder zurückgesetzt.

Gruss Gregor
 

angelone

Dülmener Rosenapfel
Registriert
02.05.04
Beiträge
1.673
natürlich :)
is ja auch von mir ^^

/edit
ah das script vom bluba is noch schöner wenn man mehr spalten will
 
Zuletzt bearbeitet: