Problem bei readfile() und EXE

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Problem bei readfile() und EXE

    Hallo,

    Ich habe eine EXE oberhalb des public_html - Verzeichnisses und will diese Datei per PHP speichern.

    Dazu lese ich alle Dateien des Verzeichnisses aus und erzeuge Links, die eine zweite Datei aufrufen und den Dateinamen als Parameter enthalten.

    PHP-Code:
    echo "abfrage.php?download=".$file
    Die zweite Datei (abfrage.php) sieht so aus:

    PHP-Code:
    <?php    

    include("../checkuser.php"); 

    if (
    $_GET['download'] <> '')
    {
    $download $_GET['download'];

    $pfad $_SESSION["user_name"];

    $basedir "/home/xyz/$pfad";

    $filename sprintf("%s/%s",$basedir,$download);
    $save_as_name basename($download);

    header("Pragma: public");
    header("Content-Type: application/octet-stream");
    header("Content-Disposition: attachment; filename=".$save_as_name.";");

    @
    readfile("$filename"); 
    }
    ?>
    Wenn ich nun auf den Link klicke und die Datei speichere, wird in die Datei in die erste Zeile ein CR/LF eingefügt und die EXE damit nicht mehr ausführbar:

    Normal:
    " MZ   ÿÿ ¸ @ È º ´ Í! ..."

    Nach Download:
    "
    MZ   ÿÿ ¸ @ È º ´ Í! ... "


    OS ist Suse Linux 7.3, PHP Version 4.3.6


    Irgend jemand eine Idee, woran es liegen könnte ?

  • #2
    Zeichenumbruch außerhalb der php-Tags in checkuser.php?!?
    mein Sport: mein Frühstück: meine Arbeit:

    Sämtliche Code-Schnipsel sind im Allgemeinen nicht getestet und werden ohne Gewähr auf Fehlerfreiheit und Korrektheit gepostet.

    Kommentar


    • #3
      Falls du eine "User das Leben gerettet" - Liste hast, kannst du meinen Namen mit raufschreiben

      Daran lag es

      Kommentar

      Lädt...
      X