Gå til innhold

linking til filer som ligger utenfor public_html mappa


Anbefalte innlegg

Hei, Jeg har et upload script som laster opp og lagrer filene utenfor public_html mappa.

Filene blir listet opp ved hjelp av denne koden:

Klikk for å se/fjerne innholdet nedenfor
<?php
$path= "../../upload/".$HTTP_POST_FILES['ufile']['name'];
if($ufile !=none)
{
if(copy($HTTP_POST_FILES['ufile']['tmp_name'], $path))
{
echo "<b>Filen er nå lastet opp</b><BR/>";

echo "Fil navn:".$HTTP_POST_FILES['ufile']['name']."<BR/>";
echo "Fil størrelse:".$HTTP_POST_FILES['ufile']['size']. "kb <BR/>";
echo "Fil type:".$HTTP_POST_FILES['ufile']['type']."<BR/>";

}
else
{
echo "Filen ble ikke lastet opp";
}
}
?>

Denne koden leser og lister opp alle filene som ligger i mappa:

Klikk for å se/fjerne innholdet nedenfor
<?php
$count = 0;

if ($handle = @opendir('../../upload/')) {

while (false !== ($file = readdir($handle))) {
	if ($file != "index.php" && $file != "." && $file != ".." && $file != "index.php ") {$count++;

		print("<a href=\"../../login/fil.php?id=".$file."\">".$file."</a><br />\n");

	}
}
  closedir($handle);
}
?>

Før jeg flyttet filene utenfor public_html mappa, brukte jeg denne koden for å laste ned filene:

Klikk for å se/fjerne innholdet nedenfor
<?php
$id = $_GET['id'];
if(!isset($id) || strpos($id, "../")!==FALSE) {
$id = "1";
}
$incfil = "../../upload/" . $id;
if(file_exists($incfil)) {
header("Location: $incfil");
} else {
print("");
}

?>

(Linken ble som følgende, fil.php?id=filnavn.doc)

Det gikk fint å laste ned filene ved hjelp av denne linken, før filene ble flyttet utenfor public_html mappa.

 

Det jeg lurer på, er hva jeg skal gjøre for å kunne laste ned filer som ikke ligger i public_html mappa. Når jeg trykker på linken, kommer det bare opp en tom hvit (blank) side.

 

Jeg har også prøvd å bruke "include". Dette virker bra med .txt filer, men feks .doc filer kommer det opp en masse rare tegn og symboler.

 

Er det noen som har et forslag til en enkel løsning for å kunne laste ned/åpne/lese filer som ligger lagret utenfor public_html mappa?

Lenke til kommentar
Videoannonse
Annonse

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...