![]() |
[PHP] Problem mit Download-Script im IE
Hallo,
folgendes Script benutze ich um Usern Downloads zur Verfügung zu stellen:
Delphi-Quellcode:
Im Firefox läuft das einwandfrei. Nur im IE gehts nicht (Downloaddaten konnten nicht ermittelt werden)!
$dir = '/www/htdocs/........';
$type = 'application/zip'; if(!empty($_GET['file']) && !preg_match('=/=', $_GET['file'])) { if(file_exists ($dir.$_GET['file'])) { makeDownload($_GET['file'], $dir, $type); } } } function makeDownload($file, $dir, $type) { header("Content-Type: $type"); header("Content-Disposition: attachment; filename=\"$file\""); readfile($dir.$file); } Viele Grüße ... |
Re: [PHP] Problem mit Download-Script im IE
Ich hoffe das ist nur Beispiel-Code. :mrgreen:
Sonst möchte ich gerne mal die config.inc.php downloaden. :cyclops: Edit:// Mhh? Ich dachte immer, man kann unter PHP den Slash problemlos durch einen Backslash ersetzen, auch unter Linux. War mir da eigentlich ziemlich sicher, aber ich habe gerade gemerkt, dass es scheinbar doch nicht geht. Ich habe statt auf "/" im Dateinamen zu prüfen immer den Dateinamen mit basename($file) extrahiert. Mit freundlichen Grüßen, Valle |
Re: [PHP] Problem mit Download-Script im IE
So ein Funktion wie MakeDownload (fast die selbe wie deine, nur die Dateigröße und ein paar mehr Infos werden geliefert.) nutze ich auch.
Ich hab hier zwar Linux, da geht das mit dem IE testen etwas schlecht. Aber unter Windows ging es mit dem IE meines Wissens aber auch. Vielleicht liegt es ja an der Größe, die kannst du ja mal mit übermitteln. Du solltest aber unbedingt noch eine Liste anlegen, wo die Dateien drin stehen, welche downloadbar sind. Sonst ist es ein Sicherheitsloch. |
Re: [PHP] Problem mit Download-Script im IE
wenn man ein Downloadverzeichnis hat, wo keine Sicherheitsrelevanten Dateien drin stehn, dann kann man auch ohne Dateiliste arbeiten, aber es muß sichergestellt sein, daß nur dateien aus diesem Verzeichnis abrufbar sind
Zitat:
Code:
PS: also dieses öffnet meißt auch noch das Downloadfenster und zeigt z.B. GIFs nich im Browser an
@header('Content-Transfer-Encoding: binary');
@header('Content-Type: application/octet-stream', true); //@header('Content-Length: ' . $i); @header('Content-Disposition: attachment; filename = "' . $EDatei . '"'); readfile($Verzeichnis . $EDatei); exit; |
Re: [PHP] Problem mit Download-Script im IE
Hi,
der Download kommt aus einem htaccess geschützten Verzeichnis. Das sollte auch so bleiben. Zugriff hat nur, wer angemeldet ist. Was hat der IE nur immer :gruebel: Viele Grüße ... |
Re: [PHP] Problem mit Download-Script im IE
Hallo,
setze zusätzlich einmal Content-Length. Außerdem hast du Content-Type falsch gesetzt. Das muss im IE "application/octetstream" sein. Grüße Edit: Ich bezog mich auf himitsus Content-Type. |
Re: [PHP] Problem mit Download-Script im IE
Damit klappts auch im IE: header("Pragma: public");
Greetz |
Re: [PHP] Problem mit Download-Script im IE
Zitat:
PHP läuft auf deinem Server und den interessiert eine .htaccess-Datei nicht die Bohne ... ergo hat man dank dieses Scripts auf alles Zugriff, sogar auf Verzeichnisse, welche sonst nicht von außen zugänglich sind (z.B. Backups, Logs) |
Re: [PHP] Problem mit Download-Script im IE
Zitat:
|
Re: [PHP] Problem mit Download-Script im IE
Zitat:
den Zugriff nur eingeloggte User. Der Zugriff ist von außen nicht möglich. Das Script im ersten Beitrag ist nur ein Ausschnitt! Viele Grüße ... |
Re: [PHP] Problem mit Download-Script im IE
wenn dein Server rein zufällig das Windows-\ versteht, dann bekommt manso leicht file=..\..\..\..\..\.htaccess etwas aus dem Rootverzeichnis :freak:
Aber OK, wenn es unte Linux läuft und "\" ungültig ist, dann geht es eventuell auch so :stupid: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:53 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 by Thomas Breitkreuz