Avatar billede homsabu Nybegynder
26. juli 2004 - 17:10 Der er 9 kommentarer og
1 løsning

Liste af filer med underbiblioteker

Hej allesammen!

Jeg ville høre om i kunne løse følgende for mig!
jeg skal bruge et script der finder alle filer i de underbiblioteker der er i den mappe jeg kører scriptet fra og så skal det blive vist nogen lunde sådan her

<html>
filnavn1.zip (underbibliotek1/)
filnavn2.zip (underbib/test/)
filnavn3.zip (underbibliotek/dir/)
filnavn4.zip (underbib4/)
</html>

så filnavnet står først efterfulgt af det underbibliotek-navn som filen ligger i...
Avatar billede terrak Nybegynder
26. juli 2004 - 17:41 #1
Har lige fikset noget sammen som burde virke :)

Det smarte er at den selv finder undermapper og viser alle filer i dem, uanset hvilket niveau af undermapper du er på. Det ikke-smarte er sådan som det hele sorteres.

<?php

function readsubdirs($dir) {

if (is_dir($dir)) {

if ($dh = opendir($dir)) {
while (($file = readdir($dh)) !== false) {

if ($file != "." && $file != "..") {


if (is_dir($dir."/".$file)) {
echo "-><font color='green'>$file</font><br>";
readsubdirs($dir."/".$file);
} else {

echo "$file ($dir)<br>";
}

}
}

}

closedir($dh);
}

}

readsubdirs("mappe");

?>
Avatar billede homsabu Nybegynder
26. juli 2004 - 17:45 #2
har du testet det selv??
for den viser ingenting overhovedet hos mig??
Avatar billede homsabu Nybegynder
26. juli 2004 - 17:47 #3
hverken filer eller biblioteker... og der er masser af filer i samme bibliotek + masser af underbib. med masser af filer?!?
Avatar billede terrak Nybegynder
26. juli 2004 - 17:48 #4
du skal ændre "mappe" i readsubdirs("mappe"); til den mappe du vil læse
Avatar billede homsabu Nybegynder
26. juli 2004 - 17:50 #5
fandt selv ud af det samtidig!!!... virker nu! :-)
Avatar billede homsabu Nybegynder
26. juli 2004 - 17:51 #6
det er næsten perfekt!
et ting til... den viser biblioteket som filen ligger i som en fuld sti... kan man let ændre det så den bare viser stien i forhold til der hvor scriptet bliver kørt?!
Avatar billede terrak Nybegynder
26. juli 2004 - 17:53 #7
Nå, okay, du vil have at den skal liste alle filer fra mappen scriptet køres fra.

Jeg skal desværre lige spise, men jeg kigger igen på det om et kvarter til 20 minutter :)
Avatar billede homsabu Nybegynder
26. juli 2004 - 17:56 #8
... nej, den skal ikke KUN vise de filer som ligger i samme mappe! den skal også vise undermapperne... men når den lister filerne i 'echo'-funktionen skal den vise den 'relative' sti til filen... f.eks: (underbibliotek/) og IKKE som den gør NU: (/usr/local/psa/home/httpdocs/read_dir/underbibliotek/)
Avatar billede homsabu Nybegynder
26. juli 2004 - 17:59 #9
har lavet det selv! -->

$tempdir = ereg_Replace("/usr/local/psa/home/httpdocs/read_dir/underbibliotek/","$null",$dir);
echo "$file ($tempdir)<br>";
Avatar billede terrak Nybegynder
26. juli 2004 - 18:19 #10
Jeg har lige opdateret det lidt, så det er lettere at se hvilke filer, der ligger i hvilken mappe:

<?php

function readsubdirs($dir, $subdirs) {

if (is_dir($dir)) {

if ($dh = opendir($dir)) {
while (($file = readdir($dh)) !== false) {

if ($file != "." && $file != "..") {

$spaces = "";
for ($i = 0; $i < $subdirs; $i++) {
$spaces .= "&nbsp;&nbsp;&nbsp;";
}

echo $spaces;

if (is_dir($dir."/".$file)) {
echo "-><font color='green'>$file</font><br>";
readsubdirs($dir."/".$file, $subdirs+1);
} else {

echo "$file ($dir)<br>";
}

}
}

}

closedir($dh);
}




}

readsubdirs("mappe",0);

?>
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