Avatar billede find_p Nybegynder
07. august 2008 - 08:54 Der er 15 kommentarer og
2 løsninger

List filnavne i DIR og put i FORM (select)

Jeg vil gerne kunne liste filnavne i DIR (Billeder)på serveren og putte resultatet i en FORM (select).

Fandt dette - ved ikke om det er noget af "vejen"?

//DIR ONLY OPTION 1: if(is_dir($full_path)){ $list[]=$full_path; }

//FILE ONLY OPTION 2: if(is_file($full_path)){ $list[}=$full_path; }

function make_tree($path){ //where $path is your source dir.
    $handle=opendir($path);
    while($a=readdir($handle)){
        if(!preg_match('/^\./',$a)){
              $full_path="$path/$a";
              $list[]=$full_path; // REPLACE WITH OPTION IF NEEDED.
              if(is_dir($full_path)){
                  $recursive=make_tree($full_path);
                  for($n=0; $n<count($recursive); $n++){
                        $list[]=$recursive[$n];
                  }
              }
        }
    }
    closedir($handle);
    return $list;
}
Avatar billede w13 Novice
07. august 2008 - 09:13 #1
Er det alle filer, der skal vises i select'en? Dvs. også filer fra undermapper? Og skal det fremgå, at de er hentet i undermapper?

Du bør nok afprøve den kode, du har fundet, og se, om den henter de ønskede filer. Så kan jeg godt indsætte dem i en select.
Avatar billede find_p Nybegynder
07. august 2008 - 09:30 #2
Ja, det er alle filer i mappen (mappen indeholder udelukkende .jpg filer)

Jeg er på job nu og har derfor ikke mulighed for at afprøve koden.

Jeg vender tilbage, når jeg har afprøvet.
Avatar billede w13 Novice
07. august 2008 - 09:33 #3
Jo, men er det kun filer i mappen, eller er det også filer i mappens undermappe? :)
Avatar billede w13 Novice
07. august 2008 - 09:34 #4
*undermapper
Avatar billede find_p Nybegynder
07. august 2008 - 09:36 #5
Det er kun filer i mappen billeder
Avatar billede showsource Seniormester
07. august 2008 - 11:22 #6
F.eks
<?php

function visFiler($dir) {

    $d = dir($dir);
    while (false !== ($file = $d->read())) {
        if (is_file($dir."/".$file)) {
            $out[] = $file;
        }     
    }
    $d->close();
    if(!empty($out)) {
    return $out;
    }
}

$path = "./images";
$files = visFiler($path);

Så har du et array $files som kan bruges i din form.

Hvis dir hvor filer ligger IKKE er et underdir, bør du bruge den fulde harddisk sti til $path

$path = "/var/www/webhost/wwwhttpd/images";

eller evt.

$path = $_SERVER["DOCUMENT_ROOT"]."/images";
Avatar billede w13 Novice
07. august 2008 - 11:26 #7
find_p>> Og så vil du kunne indsætte det som options således:

<select>
<?php
foreach($files in $file){
  echo "<option value=\"$files\">$files</option>";
}
?>
</select>
Avatar billede find_p Nybegynder
07. august 2008 - 11:46 #8
Tusind tak !!!
Jeg prøver det i aften - jeg poster resultatet ;o)
Avatar billede find_p Nybegynder
07. august 2008 - 18:11 #9
Jeg har prøvet nedenstående uden held - siden "dør".

Min mappe hedder: Billeder - er den korrekt indsat?
Stien er: http://www.minhjemmeside.dk/Billeder


<?php

function visFiler($dir) {

    $d = dir($dir);
    while (false !== ($file = $d->read())) {
        if (is_file($dir."/".$file)) {
            $out[] = $file;
        }     
    }
    $d->close();
    if(!empty($out)) {
    return $out;
    }
}

$path = "./Billeder/";
$files = visFiler($path);

?>
<select>
<?php
foreach($files in $file){
  echo "<option value=\"$files\">$files</option>";
}
?>
</select>
Avatar billede w13 Novice
07. august 2008 - 18:33 #10
Filen ligger ikke på adressen.
Avatar billede showsource Seniormester
07. august 2008 - 18:40 #11
Skal det ikke være:

<select>
<?php
foreach($files as $file){
  echo "<option value=\"$file\">$file</option>";
}
?>
</select>

???
Avatar billede w13 Novice
07. august 2008 - 19:01 #12
Jo :)
Avatar billede find_p Nybegynder
07. august 2008 - 19:48 #13
Thak you gentlemen ! - Virker perfekt

Så mangler jeg nogle svar, så jeg kan give nogle velfortjente point
Avatar billede find_p Nybegynder
07. august 2008 - 21:55 #14
Meget gerne fra jer begge - 60 point til deling ;o)
Avatar billede w13 Novice
08. august 2008 - 12:00 #15
:)
Avatar billede showsource Seniormester
08. august 2008 - 12:12 #16
ok
Avatar billede find_p Nybegynder
08. august 2008 - 13:06 #17
Endnu en gang tak og god weekend til jer
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