Morgen. Ich habe eine Script dass teilweise meine Downloads managen soll.
Das Script hat keine Leerzeichen oder Leerzeilen vor den php Start und Endtags.
Trotzdem bekomme ich wenn ich etwas über dieses Script dowloade defekte Files. Im Hexeditor habe ich gesehen , dass 2 Nichtdruckbare Zeichen mit dem HEXCODE '0a' am Anfang des Scriptes eingefügt werden , aber ich verstehe nicht woher die kommen sollen.
Hier ist das Script.
Vielleicht sieht jemand das auf die schnelle. Ich finde das Problem leider nicht.
Gruß Sono
Das Script hat keine Leerzeichen oder Leerzeilen vor den php Start und Endtags.
Trotzdem bekomme ich wenn ich etwas über dieses Script dowloade defekte Files. Im Hexeditor habe ich gesehen , dass 2 Nichtdruckbare Zeichen mit dem HEXCODE '0a' am Anfang des Scriptes eingefügt werden , aber ich verstehe nicht woher die kommen sollen.
Hier ist das Script.
PHP-Code:
<?php
session_start();
error_reporting(0);
$file = $_GET['fi'];
$path = $_GET['pa'];
$area = $_GET['ar'];
if ( isset($_GET['nn']) ){
$newname = $_GET['nn'];
}
else{
$newname = $file;
}
switch( $area ){
case 'files' : {
$prepath = $_SESSION['VERWALTUNG']['APPPFAD'] . "/app/files";
break;
} // ENDE CASE
case 'mod' : {
$prepath = $_SESSION['APPMODULE'];
break;
} // ENDE CASE
default: {
throw new Exception("GETFILEATTACK");
} // ENDE FUNKTION
} // ENDE SWITCH
if ( isset ($_GET['ty'])){
$type = $_GET['ty'];
}
else{
$type = mime_content_type($prepath.$path.$file);
}
// header("Content-type: $type");
header("Content-Disposition: attachment; filename=$newname");
if ( isset($_GET['fd']) ){
header("Content-Type: application/force-download");
}
try{
require_once ( "f_sys_strings.php");
if ( !pruefe_filename( $file ) ){
throw new Exception("GETFILEATTACK");
}
readfile("$prepath$path$file");
} // ende tryblock
catch ( Exception $exception ){
$meldung = $exception->getMessage();
}
?>
Gruß Sono
Kommentar