bilder in tabellen / automatisch zeilen wechseln

Wieder mal hab ich eine Frage... hoffe diesmal ist es nicht wieder eine Sache auf die ich selbst hätte kommen aber mir fällt keine Lösung ein...

Ich habe eine Tabelle in der ich Informationen über Bands habe, nun möchte ich eine Auswahlseite erstellen in der nur die Bandlogos angezeigt werden und sie als Link zur Detailinformations seite funktionieren.

Mein Problem ist nun die Logos automatisch anordnen zu lassen. Hier mal ein Link zu einer Seite damit ihr euch vorstellen könnt wie es aussehen soll. (http://www.indecisionrecords.com/bands/index.html)
 
Habe doch noch ein Problem... und zwar bekomm ichs nicht hin, dass mehr als 3 Spalten angelegt werden. Nach 3 Spalten wechselt er immer in eine neue Zeile.


PHP:
<?
include ("./include/header.inc.php");
require ("./include/dbconfig.inc.php");
?>
  
<table width="100%"  border="0" cellspacing="5" cellpadding="0">
  <tr>
    <td class="pagetitle">Releases</td>
  </tr>
  <tr>
    <td>
<table> 
<tr> 
<? 
 
$query = "SELECT * FROM releases ORDER BY code DESC";
					
						
						
						$result = mysql_query($query,$verbindung);


$zaehler=1; 
while ($row = mysql_fetch_array($result)) { ?> 

<td valign=top> 

<table border="0" cellpadding="0" cellspacing="0"> 
    <tr> 
        <td><a href="releases_detail.php?id=<?=$row[id]?>"><img class="imageBorder" src="images/releases/<?=$row[cover]?>" border="0" width="75" height="75"></a><img src="images/spacer.gif"></td> 
    </tr> 

</table> 

<? 
if ($zaehler=="1" or $zaehler=="2") 
        { 
        echo "</td>"; 
        $zaehler++;     
        } 
     
    else { 
        echo "</td></tr><tr>"; 
        $zaehler=1; 
        } 
} 


?> 
</table> 
</td>
  </tr>
</table>

            
<?
include ("./include/footer.inc.php");
?>
 
Hier musst du die Zählerwerte dementsprechend erhöhen je nachdem wieviele
Spalten du haben willst. Ist zwar in diesem Fall nicht sehr sauber gelöst, ich weiß aber nicht mehr wieso ich das damals so gemacht habe.
PHP:
<? 
// if ($zaehler=="1" or $zaehler=="2") 
if ($zaehler=="1" or $zaehler=="2" or $zaehler=="3" or $zaehler=="4") 
        { 
        echo "</td>"; 
        $zaehler++;     
        } 
     
    else { 
        echo "</td></tr><tr>"; 
        $zaehler=1; 
        } 
}

mfg Hoizwurm
 
danke, war mir wieder eine Hilfe. Zwar wohl nicht die beste Art es zu lösen aber es funktioniert.

In dem Zusammenhang hab ich noch eine Frage. Es geht um die Formatierung. Und zwar soll das älteste Bild unten rechts ausgeben werden und dann die Zeilen und Spalten sich von links unten nach rechts oben laufend füllen... allerdings funktioniert das nicht so wirklich.

http://www.strivingfortogetherness.de/releases.php
 
Das hängt dann mit der Reihenfolge zusammen wie du sie aus der DB ausliest.

Lass mal bei deiner Abfrage das DESC am Schluß weg, dann liest er Dir die
neuesten Einträge zuerst aus.

Ist dann zwar auch nicht genau das was du willst, aber du bist dem ganzen schon
ein Stück näher.

mfg Hoizwurm
 
Nein, die Reihenfolge ist schon richtig. Das Problem liegt jetzt darin, dass die Tabelle in der obersten Zeile nicht links anfangen soll sondern rechts. Also dass der Freiraum nicht wie jetzt rechts ist sondern links.
 
Hallo!

Also was ich momentan nicht ganz überzuckere, ist das er in der ersten Zeile 6
Bilder einfügt und in den folgenden Zeilen dann 8, das kommt mir ziemlich
unlogisch vor.

Wieviele Bilder sollens den sein, vermutlich 8 oder?

Ich würds ja noch verstehen, wenn er in der letzten Zeile nur mehr 6 hinmacht,
aber in der ersten - da steh ich auf der Leitung.

Da fällt mir momentan nichts ein.
Kannst du den aktuellen Code noch mal posten?

Vieleicht werd ich dann schlauer. Wenn Ja dann aber erst morgen, jetzt gehts erst
mal zur Freundin untern Rock.

mfg Hoizwurm
 
<?
include ("./include/header.inc.php");
require ("./include/dbconfig.inc.php");
?>

<table width="100%" border="0" cellspacing="5" cellpadding="0">
<tr>
<td class="pagetitle">Releases</td>
</tr>
<tr>
<td>
<table>
<tr>
<?

$query = "SELECT * FROM releases ORDER BY code DESC";



$result = mysql_query($query,$verbindung);


$zaehler=3;
while ($row = mysql_fetch_array($result)) { ?>

<td valign=top>

<table align="center" border="0" cellpadding="2" cellspacing="2">
<tr>
<td><a href="releases_detail.php?id=<?=$row[id]?>"><img class="imageBorder" src="images/releases/<?=$row[cover]?>" border="0" width="75" height="75" alt="<?=$row[band]?> - <?=$row[title]?>"></a></td>
</tr>

</table>

<?
if ($zaehler=="1" or $zaehler=="2" or $zaehler=="3" or $zaehler=="4" or $zaehler=="5" or $zaehler=="6" or $zaehler=="7")
{
echo "</td>";
$zaehler++;
}

else {
echo "</td></tr><tr>";
$zaehler=1;
}
}


?>
</table>
</td>
</tr>
</table>


<?
include ("./include/footer.inc.php");
?>
 
Zuletzt bearbeitet:
Zurück