Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   [PHP] Dateidownload wird ausgegeben - als Text :( (https://www.delphipraxis.net/87878-%5Bphp%5D-dateidownload-wird-ausgegeben-als-text.html)

Meflin 6. Mär 2007 18:26


[PHP] Dateidownload wird ausgegeben - als Text :(
 
Moin moin!

In letzter Zeit inflationär - hier auch mal wieder von mir eine PHP-Frage :mrgreen:

Ich habe folgende PHP-Funktion, um Datei-Downloads zu generieren (es soll natürlich der Download-Dialog des Browsers angezeigt werden):
Code:
   public function Download() {

      header("Content-type: application/force-download");
      header("Content-Transfer-Encoding: Binary");
      header("Content-length: " . filesize($this->FileName));
      header("Content-disposition: inline; filename=\"" . $this->OutputFileName . "\"");
      header("Content-Description: Blubber");
      echo $this->FileStream;
      
   }
Funktioniert im Prinzip auch, aber: Der IE7 (evtl auch andere Browser, hatte das Problem bisher nur im IE) gibt ab und an, vor allem wenn die Seite mit aktualisieren neu aufgerufen wird, den Dateiinhalt als Text aus, anstat einen Download anzubieten - das ist so ziemlich das blödste, was er machen kann :(

Woran könnte das liegen, und was kann man dagegen tun?


alcaeus 6. Mär 2007 18:27

Re: [PHP] Dateidownload wird ausgegeben - als Text :(
 
Mach mal anstatt Content-Disposition:inline Content-Disposition:attachment ;)

Greetz
alcaeus

Meflin 6. Mär 2007 18:50

Re: [PHP] Dateidownload wird ausgegeben - als Text :(
 
:hi:

merci, scheint zu helfen, konnte das Verhalten bisher jedenfalls nicht mehr reproduzieren :)


alcaeus 6. Mär 2007 22:33

Re: [PHP] Dateidownload wird ausgegeben - als Text :(
 
Du solltest sowieso immer den Inhalt als Attachment ausgeben. Mit Content-Disposition: inline kannst du dir ein paar schoene XSS-Luecken einfangen, ich hab mich erst vor ein paar Monaten damit beschaeftigen (muessen)

Greetz
alcaeus

Meflin 10. Mär 2007 12:41

Re: [PHP] Dateidownload wird ausgegeben - als Text :(
 
Zu früh gefreut - das Problem tritt weiterhin auf :(


yankee 10. Mär 2007 13:25

Re: [PHP] Dateidownload wird ausgegeben - als Text :(
 
Dann reduzier dein Code mal auf das mindeste...
Beispiel von php.net:
Code:
<?php
// Wir werden eine PDF Datei ausgeben
header('Content-type: application/pdf');

// Es wird downloaded.pdf benannt
header('Content-Disposition: attachment; filename="downloaded.pdf"');

// Die originale PDF Datei heißt original.pdf
readfile('original.pdf');
?>
Content-type muss bei dir ntaürlich immernoch application/force-download sein und statt readfile eben dein echo...


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:20 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz