WinFuture-Forum.de: Download über Header - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
Seite 1 von 1

Download über Header mit PHP


#1 Mitglied ist offline   MaliMaster 

  • Gruppe: aktive Mitglieder
  • Beiträge: 907
  • Beigetreten: 10. April 02
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Deutschland

geschrieben 06. April 2006 - 13:25

Hallo Leute,

ich habe ein kleines Downloadscript geschrieben. Wenn jemand was runterläd soll er nicht den direkten Pfad sehen können. So sieht das ganze aus:

function FileDownload($FileName, $FileDir, $FileSize){
	if($FileName != "" && $FileSize != ""){

		$FileName = urldecode($FileName);
		$down_dir = $FileDir.$FileName;

		header("Content-type: audio/mpeg");
		header("Content-disposition: attachment; filename=".$FileName."");
		header("Content-Length: ".$FileSize."");

		readfile($down_dir);
	}
}


Der Link dazu sieht folgendermaßen aus:

<a href='download.php?lied=".urlencode($file_array[$i][name])."&groesse=".$file_array[$i]['groesse_bytes']."'>


Im Internetexplorer funktioniert die ganze Sache auch super, bei FireFox erkennt er den Download nur bis zum ersten Leerzeichen. Am Link liegt es nicht, der wird ja encodiert. Es muss also am Header liegen, aber wo ist der Fehler?

Dieser Beitrag wurde von MaliMaster bearbeitet: 06. April 2006 - 13:29

0

Anzeige



#2 Mitglied ist offline   Floele 

  • Gruppe: aktive Mitglieder
  • Beiträge: 919
  • Beigetreten: 22. Juni 04
  • Reputation: 0

geschrieben 06. April 2006 - 13:45

Du meinst den Dateinamen? Mach mal Anführungszeichen um den Dateinamen im Header.
0

#3 Mitglied ist offline   MaliMaster 

  • Gruppe: aktive Mitglieder
  • Beiträge: 907
  • Beigetreten: 10. April 02
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Deutschland

geschrieben 06. April 2006 - 13:52

Vielen Dank.

Lösung war:

header("Content-disposition: attachment; filename=\"".$FileName."\"");
0

Thema verteilen:


Seite 1 von 1

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0