Hi,
an dem folgenden Problem beiße ich mir schon seit mehreren Tagen die Zähne aus:
Ich will mittels php auf ein verzeichnis auf einer anderen festplatte zugreifen. die seite soll automatisch alle unterverzeichnisse durchsuchen und dann die einzelnen dateien als downloadbare links darstellen. zwar habe ich es geschafft, dass dies passiert, leider werden aber die links falsch angegeben. php stellt den link immer relativ zum webverzeichnis dar und nicht den tatsächlichen pfad. der link funktioniert also nicht. hier mal der code soweit wie ich bisher gekommen bin:
<?PHP
function show_dir($dir, $pos=2)
{
if($pos == 2)
{
echo "<hr><pre>";
}
$handle = @opendir($dir);
while ($file = @readdir ($handle))
{
if (eregi("^\.{1,2}$",$file))
{
continue;
}
if(is_dir($dir.$file))
{
printf ("% ".$pos."s <b>%s</b>\n", "|-", $file);
show_dir($dir.$file."/", $pos + 3);
}
else
{
echo(" ");
echo("|-");
echo("<a href=c:\daten\ "$file\">");
echo("$file");
echo("</a>\n <br>");
}
}
@closedir($handle);
if($pos == 2)
{
echo "</pre><hr>";
}
}
show_dir("c:/daten/");
?>
der webserver liegt unter e:\programme\apache\htdocs
aus platzgründen kann ich leider nicht einfach die daten ins webserver verzeichnis kopieren.
Wäre super wenn mir da jemand weiterhelfen könnte. Schon mal danke im voraus.
an dem folgenden Problem beiße ich mir schon seit mehreren Tagen die Zähne aus:
Ich will mittels php auf ein verzeichnis auf einer anderen festplatte zugreifen. die seite soll automatisch alle unterverzeichnisse durchsuchen und dann die einzelnen dateien als downloadbare links darstellen. zwar habe ich es geschafft, dass dies passiert, leider werden aber die links falsch angegeben. php stellt den link immer relativ zum webverzeichnis dar und nicht den tatsächlichen pfad. der link funktioniert also nicht. hier mal der code soweit wie ich bisher gekommen bin:
<?PHP
function show_dir($dir, $pos=2)
{
if($pos == 2)
{
echo "<hr><pre>";
}
$handle = @opendir($dir);
while ($file = @readdir ($handle))
{
if (eregi("^\.{1,2}$",$file))
{
continue;
}
if(is_dir($dir.$file))
{
printf ("% ".$pos."s <b>%s</b>\n", "|-", $file);
show_dir($dir.$file."/", $pos + 3);
}
else
{
echo(" ");
echo("|-");
echo("<a href=c:\daten\ "$file\">");
echo("$file");
echo("</a>\n <br>");
}
}
@closedir($handle);
if($pos == 2)
{
echo "</pre><hr>";
}
}
show_dir("c:/daten/");
?>
der webserver liegt unter e:\programme\apache\htdocs
aus platzgründen kann ich leider nicht einfach die daten ins webserver verzeichnis kopieren.
Wäre super wenn mir da jemand weiterhelfen könnte. Schon mal danke im voraus.
Kommentar