Avatar billede bssa Nybegynder
01. juni 2008 - 10:52 Der er 13 kommentarer og
2 løsninger

50 billeder pr side

hej.. jeg er bygyndt at se lidt på php og fike en idé om at lave en billed server osv.

nu er jeg kommet til hvor jeg skal laver siden hvor man kan se billederen..

Jeg vil godt ha at man kan se 50 billeder af gangen der efter tryk næste side..

Nogen der kan hjælpe??

hvad jeg har så langt: http://77.212.121.142/show.php?sted=aalborg&navn=karneval&dato=270508

koden:

<body link="#FFFFFF" vlink="#FFFFFF" alink="#FFFFFF"> <center>
<?php

$dir = $_GET[sted];
$dato = $_GET[dato];
$navn = $_GET[navn];
$dis = "img/$dir/$navn/$dato/";

$dirname = "$dis"; //Hvor skal den lede efter filer?
$dirhandle = opendir($dirname); //Åben mappen
while($file = readdir($dirhandle)) //Loop gennem mappen
{
    if ($file != "." && $file != "..") //Fjern . og ..
    {
        if (is_file($dirname.$file)) //Find ud af om det er en fil eller en mappe
        {
$ndis = "http://77.212.121.142/showit.php?sted=$dir&navn=$navn&dato=$dato&pic=$file";
?>
<a href="<?php echo $ndis; ?>"><img src="<?php echo $dis . $file; ?>" height="125" alt="Photo"></a> 

<?php
        }
       

    }
}
?>
Avatar billede zynzz Praktikant
01. juni 2008 - 11:05 #1
Måske kan følgende bruges:


<?php
#Indstillinger
$sum = 3; // Antal billeder ved siden af hinanden
$sumcount = 1;
$imgwidth = 68; // Billedets bredde
$imgheight = 65; // Bileddets højde
$mappe = "billeder"; // Mappen med billeder
$pr_side = 9; // Antal billeder pr. side

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 dem alfabetisk
$handle = opendir($mappe);
while (($fil = readdir($handle)) !== false) {
if ($fil != "." && $fil != ".." && !is_dir($mappe."/".$fil)) {
$billeder[] = "$fil";
}
}
closedir($handle);
# Udskriver billederne
sort($billeder);
echo "<table><tr>";
while($i < $pics && $billeder[$i] != "") {
echo "<td><a href=\"show.php?show=$mappe/$billeder[$i]\"><img src=\"$mappe/$billeder[$i]\" border=\"1\" width=\"$imgwidth\" height=\"$imgheight\"></a></td>";
if ($sumcount == $sum) {
$sumcount = 0;
echo "</tr><tr>";
}
$sumcount++;
$i++;
}
?>
</tr>
</table>
<hr>
<?php
#Udskriver frem og tilbage links
if ($offset >= $pr_side) {
$forrige = $offset-$pr_side;
echo "<a href=\"?offset=$forrige\">Forrige</a> ";
}
$page = 1;
for ($start = 0; count($billeder) > $start; $start = $start + $pr_side) {
if($offset != $page * $pr_side - $pr_side) {
echo "<a href=\"?offset=$start\">$page</a> ";
} else {
echo $page." ";
}
$page++;
}
if (count($billeder) > $offset+$pr_side) {
$naeste = $offset+$pr_side;
echo "<a href=\"?offset=$naeste\">Næste</a>";
}
?>
Avatar billede bssa Nybegynder
01. juni 2008 - 11:14 #2
det må jeg sige var hurtigt tak for svartet
Avatar billede bssa Nybegynder
01. juni 2008 - 11:18 #3
nu er der bare et problem den laver en fejl når jeg prøver at gå til næste side

http://77.212.121.142/show3.php?sted=aalborg&navn=karneval&dato=270508
Avatar billede zynzz Praktikant
01. juni 2008 - 11:23 #4
Kan du ikke skrive hele scriptet ?
Avatar billede bssa Nybegynder
01. juni 2008 - 11:25 #5
<center>
<?php

$dir = $_GET[sted];
$dato = $_GET[dato];
$navn = $_GET[navn];
$dis = "img/$dir/$navn/$dato/";

#Indstillinger
$sum = 4; // Antal billeder ved siden af hinanden
$sumcount = 1;

$imgheight = 125; // Bileddets højde
$mappe = "$dis"; // Mappen med billeder
$pr_side = 50; // Antal billeder pr. side

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 dem alfabetisk
$handle = opendir($mappe);
while (($fil = readdir($handle)) !== false) {
if ($fil != "." && $fil != ".." && !is_dir($mappe."/".$fil)) {
$billeder[] = "$fil";
}
}
closedir($handle);
# Udskriver billederne
sort($billeder);
echo "<table><tr>";
while($i < $pics && $billeder[$i] != "") {
echo "<td><a href=\"showit.php?sted=$dir&navn=$navn&dato=$dato&pic=$billeder[$i]\"><img src=\"$mappe/$billeder[$i]\" border=\"1\" width=\"$imgwidth\" height=\"$imgheight\"></a></td>";
if ($sumcount == $sum) {
$sumcount = 0;
echo "</tr><tr>";
}
$sumcount++;
$i++;
}
?>
</tr>
</table>
<hr>
<?php
#Udskriver frem og tilbage links
if ($offset >= $pr_side) {
$forrige = $offset-$pr_side;
echo "<a href=\"?offset=$forrige\">Forrige</a> ";
}
$page = 1;
for ($start = 0; count($billeder) > $start; $start = $start + $pr_side) {
if($offset != $page * $pr_side - $pr_side) {
echo "<a href=\"?offset=$start\">$page</a> ";
} else {
echo $page." ";
}
$page++;
}
if (count($billeder) > $offset+$pr_side) {
$naeste = $offset+$pr_side;
echo "<a href=\"?offset=$naeste\">Næste</a>";
}
?>
Avatar billede zynzz Praktikant
01. juni 2008 - 11:41 #6
Altså jeg kan forstille mig du skal lave lidt om på linket så sted og navn eller dato kommer med på det følgende næste link... .)
Avatar billede zynzz Praktikant
01. juni 2008 - 11:42 #7
Avatar billede bssa Nybegynder
01. juni 2008 - 11:48 #8
arrr hade ikke lige set det :P takker
Avatar billede zynzz Praktikant
01. juni 2008 - 11:52 #9
en anden ting jeg kan se er at du har skrevet $mappe = "$dis";  du kan bare slette "" da det ikke er en tekst...
Avatar billede zynzz Praktikant
01. juni 2008 - 11:53 #10
+ sæt $imgwidth
Avatar billede bssa Nybegynder
13. juni 2008 - 21:26 #11
zynzz det er en super kode du har poste lave du lige et svar til nogen Point's
Avatar billede zynzz Praktikant
31. juli 2008 - 14:44 #12
svar
Avatar billede bssa Nybegynder
31. juli 2008 - 20:36 #13
Takker
Avatar billede bssa Nybegynder
31. juli 2008 - 20:37 #14
hmm der sker ikke noget når jeg trykker accepter???
Avatar billede zynzz Praktikant
14. august 2008 - 16:53 #15
Klik på mit navn og klik dernæst acceptere
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester