Andreas: Probleme mit Download-Script

Beitrag lesen

Hallo, folgendes Download-Script:

function download_file() {
    global $mkportals, $DB, $mklib, $mklib_board;
    $file= $mkportals->input['file'];
    $ide= $mkportals->input['ide'];
    $query = $DB->query( "SELECT downloads FROM mkp_download where id = '$ide'");
    $row = $DB->fetch_row($query);
    $downloads = $row['downloads'];
    ++$downloads;
    $DB->query("UPDATE mkp_download SET downloads ='$downloads'  where id = '$ide'");
    $DB->close_db();
    $real_file = "mkportal/modules/downloads/file/mk_".$ide."_".$file;
    $real_file = preg_replace("(.\*)\..\*", "\1", $real_file);
    $real_file .= ".mk";
    if (is_file("mkportal/modules/downloads/file/".$file)) {
        rename("mkportal/modules/downloads/file/".$file, $real_file);
    }
    @header( "Content-Type: application/octet-stream\nContent-Disposition: inline; filename="".$file.""\nContent-Length: ".(string)(filesize( $real_file ) ) );
    $fh = fopen( $real_file, 'rb' );
    fpassthru( $fh );
    @fclose( $fh );
    exit();
}

Das Problem ist nun dass wenn die Datei die heruntergeladen werden soll z.B. eine .txt Datei ist, das sie nicht gespeichert wird sondern der Inhalt der .txt-Datei angezeigt wird.

Ich habe versucht den header zu ändern ohne Erfolg.
Wie muss es lauten damit auch text-Dateien heruntergeladen werden können.

Das Seltsame ist im Firefox funktioniert das Script problemlos.
Nur im Internetexplorer (6.0.2900.xxx SP2) funktioniert es nicht.

Gruß Andreas