[PHP] - Download Script: Funktioniert, aber es wird HTML Code in Datei geschrieben

Vossen

Ensign
Registriert
Apr. 2002
Beiträge
170
Hallo zusammen,

ich baue mir gerade ein kleines Upload-/Download-Skript.
Es werden ausschließlich Textdateien mit den Endungen .dat und .lng zum Download angeboten.
Daher möchte/muss ich mit header(); arbeiten.
Mein System funzt so, dass ich eine index.php habe, die immer nur die Modul-Seiten included. Daher ist der Aufruf so: index.php?site=download&load=1234
Sprich: es wird die Datei download.php mit dem Parameter load=1234 aufgerufen. 1234 stellt dabei die DB-ID der Datei dar.
Im Grunde funktioniert das Downloaden auch wunderbar. Allerdings wird in die Datei auch HTML-Code geschrieben. Und zwar Code aus der index.php.
Hier mal der Code aus der download.php:
PHP:
  // Der Dateiname wird anhand der ID aus der DB geholt
$sql_get_file = "SELECT filename 
                    FROM ".$GLOBALS['db_prefix']."bv_files
                    WHERE id = $file
                    LIMIT 1
                    ";
  $result_get_file = mysql_query($sql_get_file);
  list($file) = mysql_fetch_row($result_get_file);
// Header-Kram
  header( 'Content-type: text/txt' );
  header( 'Content-Length: ' . filesize("./files/".$file ) );
  $dateiname = basename( $file );
  header( "Content-Disposition: attachment; filename=$dateiname");
  readfile("./files/".$file );
Zur Ordnerstruktur:
Dateiname: Ordner
index.php ........... /
download.php .... /modules
$file .................... /files

Hat einer eine Idee??

Fetten Dank!

Bene
 
Zurück
Oben