vis indholdet af en mappe med billeder
<table border="0" cellpadding="0" cellspacing="8" width="100%"><tr>
<?
# Indstillinger
$mappe = "uploads/"; // Mappen med billeder
$pr_side = 4; // Antallet af billeder pr. side
$height = 100;
$width = 100;
if (isset($_GET['offset'])) {
$offset = $_GET['offset'];
} else {
$offset = 0;
}
$pics = $offset+$pr_side;
$i = $offset;
# Laver et array med billederne, så vi senere kan sortere
$handle = opendir($mappe);
while (($fil = readdir($handle)) !== false) {
if ($fil !=".." && $fil != ".." && !is_dir($mappe."/".$fil)) {
$billeder[] = $fil;
}
}
closedir($handle);
# Udskriver billederne
sort($billeder);
while($i < $pics && $billeder[$i] != "") {
echo "<td width=\"25%\" valign=\"top\"><a href=\"$mappe/$billeder[$i]\" target=\"_blank\"><img src=\"$mappe/$billeder[$i]\" border=\"0\" width=\"$width\" height=\"$height\" style=\"border: 2px solid #000;\" alt=\"Tryk for stor version!\"></a></td>";
$i++;
}
#Udskriver frem og tilbage links
if ($offset >= $pr_side) {
$forrige = $offset-$pr_side;
echo "<a href=\"?site=galleri&maerke=brugernes&offset=$forrige\" style=\"padding-left: 4px; padding-right: 4px;\">Tilbage</a>";
}
$side = 0;
$antal_sider = ceil(count($billeder) / $pr_side);
for($i = 1; $antal_sider >= $i; $i++) {
$side += $pr_side;
}
if (count($billeder) > $offset+$pr_side) {
$naeste = $offset+$pr_side;
echo "<a href=\"?site=galleri&maerke=brugernes&offset=$naeste\" style=\"padding-left: 4px; padding-right: 4px;\">Næste side</a>";
}
?>
</tr>
</table>
Denne kode viser alle billederne i mappen uploads - men hvordan gør jeg så den efter 4 billeder laver en ny tr og så ligesom med de andre - eftersom min side ikke kan have mere end 4 billeder i bredden. Og så skal der kunne være 12 billeder på hele siden, altså ialt 3 tr'er før den laver ny side. Forstår I, og kan det laves bare LIDT simpelt?
Det er til www.xup.dk?site=galleri&maerke=brugernes
Prøv evt selv at uploade noget.
Kommentar: drinkit
30/01-2007 01:08:10 har fundet fejlen nu.
if (count($billeder) > $offset+$pr_side) {
echo "</tr><tr>";
}
har jeg nu sat ind, men nu sætter den </tr><tr> ind bag hvert billede hvis billede nummeret er over 4, den skal kun gøre det ved hver 4. billede jo, for at der er 4 billeder i en tr!
while($i < $pics && $billeder[$i] != "") {
echo "<td width=\"25%\" valign=\"top\"><a href=\"$mappe/$billeder[$i]\" target=\"_blank\"><img src=\"$mappe/$billeder[$i]\" border=\"0\" width=\"$width\" height=\"$height\" style=\"border: 2px solid #000;\" alt=\"Tryk for stor version!\"></a></td>";
if (count($billeder) > $offset+$pr_side) {
echo "</tr><tr>";
}
$i++;
sådan ser min kode ud nu, hvordan skal den se ud, for at min side ikke ser således her ud:
http://www.xup.dk/?site=galleri&maerke=brugernes -> der skal være 4 billeder i hver tr!
lige så snart jeg nu sletter ET billede, så der kun er 4, så er de alle i samme tr! - men så snart der er over 4 billeder laver den en tr til hver. også logisk nok, men hvordan får jeg det som jeg vil have det...?
er ved at blive sindssyg!
på forhånd tak! Mikael
