Avatar billede jaweni Nybegynder
28. november 2005 - 04:26 Der er 12 kommentarer og
1 løsning

Vis alle mapper og indhold af mappe

Hej,
hvem kan bidrage med kode, så man kan
se mapper og deres filer?

Ved tryk på Overmappe,
så vis alle filer (skal kunne downloades).

MVH. jaweni
Avatar billede jakobdo Ekspert
28. november 2005 - 07:50 #1
<?php
foreach (glob("*.*") as $filename)
{
  echo "$filename size " . filesize($filename) . "\n";
}
?>
Avatar billede jaweni Nybegynder
29. november 2005 - 17:35 #2
Skal der ikke stå noget med: <a href....>??
Avatar billede jaweni Nybegynder
29. november 2005 - 18:13 #3
Sorry jacobdo,
det virker ikk!

Mapper vises; men ikke indholdet ved
klik på mappen.

gengiver lige koden:

<html>
<head>

<p align="left"><font color="#000000" size="1" face="System">

<?php

echo "Sidste opdatering den: " . date ("d-m-y, H:i:s", filemtime('indexet.php'));
echo '<br><br><br>';

$handle = opendir(".");

    while ($file = readdir($handle))

  // foreach (glob("*.*") as $file)
    {
      if($file != '.' && $file != '..' && $file != 'indexet.php')
      {
    $rundet = round(filesize($file)/1024);

    echo "( ";
    echo str_pad($rundet, 5, "_____" ,STR_PAD_LEFT);
    echo " KB )";

      echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"; 
        echo "<a href='$file'>$file</a><br><br>";       
      }
    }

closedir($handle);
?>

</font></p>
Avatar billede jakobdo Ekspert
29. november 2005 - 18:29 #4
Specielt kan jeg bedre lide opendir()

Se noget kode her:

<?php
$dir = "/etc/php5/";

// Open a known directory, and proceed to read its contents
if (is_dir($dir)) {
  if ($dh = opendir($dir)) {
      while (($file = readdir($dh)) !== false) {
          echo "filename: $file : filetype: " . filetype($dir . $file) . "\n";
      }
      closedir($dh);
  }
}
?>

Inde i while skal du så teste med is_dir() eller is_file() og så lave dem til links...
Avatar billede jaweni Nybegynder
30. november 2005 - 00:39 #5
Det funker bare ikke!
Der sker ikke en dyt!
Avatar billede jakobdo Ekspert
30. november 2005 - 11:52 #6
Prøv at giv mig lidt info, hvad hedder det dir du vil teste?
Så skal jeg bruge at lave noget kode som kan hjælpe dig.
Avatar billede jaweni Nybegynder
30. november 2005 - 16:10 #7
Hej jacobdo,

www.afmsoftware.dk/software/indexet.php

Når jeg trykker på linket til en mappe, får jeg denne meddelelse (linket til: mappen Bios). Tryk på andre mapper giver tilsvarende besked.

Forbidden
You don't have permission to access /software/Bios/ on this server.
Avatar billede jaweni Nybegynder
30. november 2005 - 18:33 #8
Hvad gør/laver: $dh
Den er ikke erklæret nogen steder.

mvh. jaweni
Avatar billede jakobdo Ekspert
30. november 2005 - 18:58 #9
$dh = opendir($dir)
Den er lige med det dir som du åbner.

Det med:
Forbidden
You don't have permission to access /software/Bios/ on this server.
Kan løses på 2 måder:

Enten skal du tillade dirlisting i din apache server.
Eller også skal du istedet for at åbne diret, så skal du lave en link, f.eks.:
indexex.php?dir=Bios
Avatar billede jaweni Nybegynder
30. november 2005 - 19:54 #10
Ja, det kører bare videre.

Jeg må have dit svar noget mere specifiseret.

1) hvordan tillader jeg dirlisting?
2) indexex.php osv. Må du lige vise med et eksempel,da det jo kan dreje sig om et
hvilket som helst dir (mappe).
Avatar billede jakobdo Ekspert
30. november 2005 - 20:13 #11
Noget i denne stil:

<?php
//http://exp.dk/spm/667933

$dir = (isset($_GET['dir']))?$_GET['dir']:"";

$FullDir = getcwd() . "/" . $dir . "/";

// Open a known directory, and proceed to read its contents
if (is_dir($FullDir))
{
    if ($dh = opendir($FullDir))
    {
        while (($file = readdir($dh)) !== false)
        {
            if(is_dir($FullDir . $file))
                echo "Dir: <a href=\"667933.php?dir=".$dir."/".$file."\">".$file."</a><br>\n";
            else
                echo "File: <a href=\"".$file."\">".$file."</a><br>\n";
        }
        closedir($dh);
    }
}
?>


Den er dog farlig, da jeg muligvis tror man vil kunne se alle filer på dit system! :o(
Avatar billede jaweni Nybegynder
07. april 2008 - 14:51 #12
Har givet op.
Giv 1 svar.
Avatar billede jakobdo Ekspert
07. april 2008 - 18:37 #13
Svar!
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