Avatar billede dotcom1 Nybegynder
28. december 2004 - 13:40 Der er 2 kommentarer og
1 løsning

List billeder som thumbnails i mappe.

Har fundet dette script på Eksperten. Jeg kan se at der er inkluderet en upload-funktion i scriptet, og det har jeg ikke rigtig brug for. Hvad skal fjernes, så det kun viser en liste over billeder i den angivne mappe?

Scriptet:

<?php

Mvh.

function upload_fil($fil, $max_stoerrelse = 100, $bibliotek = "default", $filtyper_tilladt = "default") {

    if ($bibliotek == "default") {
        $bibliotek = "fotos/galleri";
    }

    if ($filtyper_tilladt == "default") {
        $filtyper_tilladt = array("image/bmp", "image/jpeg", "image/pjpeg", "image/tiff", "image/png", "image/gif", "application/pdf");
    }

    if ($fil["size"] > 0) {
     
        $filnavn = strtolower(ereg_replace(" ", "_", $fil["name"]));
        $fil_sti = $bibliotek . "/" . $filnavn;
        $fra = $fil["tmp_name"];
        $fil_stoerrelse = filesize($fra)/1024;
        $filtype = $fil["type"];
        $fejl = 0;

        if (!in_array($filtype, $filtyper_tilladt)) {
            echo "<p>Filtypen '$filtype' er ikke tilladt. De tilladte filtyper er '" . implode("', '", $filtyper_tilladt) . "'. Filen '$filnavn' kan derfor ikke uploades!</p>";
            $fejl = 1;
        }
        if ($fil_stoerrelse > $max_stoerrelse) {
            echo "<p>Filen '$filnavn' er for stor og kan ikke uploades. Den fylder " . ceil($fil_stoerrelse) . " kb og der kan maximalt uploades $max_stoerrelse kb!</p>";
            $fejl = 1;
        }
        if ($fejl == 0) {
            if (file_exists($fil_sti)) {
             
                $pos = strrpos($filnavn, ".");
                $foerpos = substr($filnavn, 0, $pos);
                $efterpos = substr($filnavn, $pos + 1, strlen($filnavn) - ($pos + 1));
                $i = 2;
             
                echo "<p>Filen '$filnavn' eksisterer allerede i '" . $bibliotek . "' og filen omdøbes derfor til ";
             
                while (file_exists($fil_sti)) {
                    $filnavn = $foerpos . "(" . $i . ")." . $efterpos;
                    $fil_sti = $bibliotek . "/" . $filnavn;
                    $i++;
                }
                echo "'$filnavn'</p>";
            }

            $til = $fil_sti;

            if (move_uploaded_file($fra, $til)) {
                echo "<p>Filen '$filnavn' er uploadet!</p>";
                return $fil_sti;
            } else {
                echo "<p>Desværre, filen '$filnavn' kunne ikke uploades!</p>";
                return false;
            }
        }
    } else {
        echo "<p>Der er ikke vedhæftet nogen fil!</p>";
    }
}
function listFiler($bibliotek) {

  if($bib = @opendir($bibliotek)) {
    /**
    * Denne syntaks er forklaret i PHP-manualen:
    * http://www.php.net/manual/en/function.readdir.php
    */
    while (false !== ($fil = readdir($bib))) {
      if($fil != "." && $fil != ".." && !ereg("^\..+", $fil)) {
          $fil_liste[] = "<a href=\"$bibliotek/$fil\" target=_blank><img src=\"$bibliotek/$fil\" width=\"100px\" border=\"0\" alt=\"$fil\"></a>";
      }
    }
    closedir($bib);

    if(is_array($fil_liste)) {
      $liste = join(" ", $fil_liste);
    } else {
      $liste = "<span class=\"title\">Ingen filer p&aring; lager</span>";
    }
    return "<span class=\"title\">Filer p&aring; lager:</span><br />\n"
    . "<br />\n"
    . "<span class=\"subtitle\">Klik på et billede for at se det i original st&oslash;rrelse.</span><br />\n"
    . "<br />\n"
    . "$liste";
  } else {
    die("Kunne ikke &aring;bne biblioteket: " . $bibliotek);
  }
}
if ($_POST[sendknap]) {

    $fil = $_FILES["upfil"];
    $max_stoerrelse = 1000;
    $upload_mappe = "fotos/galleri";
 
    upload_fil($fil);
}
echo listFiler("fotos/galleri");
?>
Avatar billede googolplex Novice
28. december 2004 - 14:39 #1
<?php

function listFiler($bibliotek) {

  if($bib = @opendir($bibliotek)) {
    /**
    * Denne syntaks er forklaret i PHP-manualen:
    * http://www.php.net/manual/en/function.readdir.php
    */
    while (false !== ($fil = readdir($bib))) {
      if($fil != "." && $fil != ".." && !ereg("^\..+", $fil)) {
          $fil_liste[] = "<a href=\"$bibliotek/$fil\" target=_blank><img src=\"$bibliotek/$fil\" width=\"100px\" border=\"0\" alt=\"$fil\"></a>";
      }
    }
    closedir($bib);

    if(is_array($fil_liste)) {
      $liste = join(" ", $fil_liste);
    } else {
      $liste = "<span class=\"title\">Ingen filer p&aring; lager</span>";
    }
    return "<span class=\"title\">Filer p&aring; lager:</span><br />\n"
    . "<br />\n"
    . "<span class=\"subtitle\">Klik på et billede for at se det i original st&oslash;rrelse.</span><br />\n"
    . "<br />\n"
    . "$liste";
  } else {
    die("Kunne ikke &aring;bne biblioteket: " . $bibliotek);
  }
}

echo listFiler("fotos/galleri");

?>
Avatar billede fruut Nybegynder
28. december 2004 - 14:44 #2
Lidt nemmere at sige hvad der IKKE skal fjernes, hehe.

Du skal bevare:

<?php

function listFiler($bibliotek) {

  if($bib = @opendir($bibliotek)) {
    /**
    * Denne syntaks er forklaret i PHP-manualen:
    * http://www.php.net/manual/en/function.readdir.php
    */
    while (false !== ($fil = readdir($bib))) {
      if($fil != "." && $fil != ".." && !ereg("^\..+", $fil)) {
          $fil_liste[] = "<a href=\"$bibliotek/$fil\" target=_blank><img src=\"$bibliotek/$fil\" width=\"100px\" border=\"0\" alt=\"$fil\"></a>";
      }
    }
    closedir($bib);

    if(is_array($fil_liste)) {
      $liste = join(" ", $fil_liste);
    } else {
      $liste = "<span class=\"title\">Ingen filer p&aring; lager</span>";
    }
    return "<span class=\"title\">Filer p&aring; lager:</span><br />\n"
    . "<br />\n"
    . "<span class=\"subtitle\">Klik på et billede for at se det i original st&oslash;rrelse.</span><br />\n"
    . "<br />\n"
    . "$liste";
  } else {
    die("Kunne ikke &aring;bne biblioteket: " . $bibliotek);
  }
}

echo listFiler("fotos/galleri");

?>

Altså funktionen listFiler :) De andre er overflødige, da upload_fil er funktionen der smider det billede man vælger i "browse"-formen, op i folderen fotos/galleri.
if ($_POST[sendknap]... Er en kontrol, der - hvis "submit"-knappen blev trykket ned og dermed opdaterede siden - "henviser" til upload funktionen.

Håber det hjælper - jeg kan ikke sidde og kigge scriptet igennem nærmere lige nu for at se om det gør helt præcis hvad du ønsker, men bevar hvad jeg skrev og så burde det køre; ud fra hvad du efterlyste :)

Held og lykke!
Avatar billede dotcom1 Nybegynder
28. december 2004 - 14:46 #3
Virker fint, googolplex. :) Takker.
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