PHP: Datei Herunterladen-Skript funktioniert nicht auf iPad

Habe ich eine Datei download-script, dass ich geschrieben habe, die Dateien liest von unten "public_html" und ermöglicht es dem Benutzer, um Sie herunterzuladen nach der überprüfung, um zu sehen, wenn der Benutzer eingeloggt ist und dass die Datei eine gültige Datei für Sie zum download bereit.

Ein Problem ich habe mir vor kurzem begegnet ist, dass auf einem iPad es ist einfach nicht alles, wenn der link angeklickt wird.

Beispiel download Datei code, nachdem alle Prüfungen durchgeführt wurden:

header("Pragma: public");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Cache-Control: private",false);
header("Content-Type: application/msword");
header("Content-Disposition: attachment; filename=\"file.doc\";" );
header("Content-Length: 50688");

readfile(SITE_PATH .'/files/file.doc');

Dieses Skript wurde getestet und geprüft, die PC -, Mac-und Linux-Maschinen in mehreren Browsern (FF, Opera, IE6-9, Chrome, Safari) und alle scheinen gut zu funktionieren, also muss es etwas sein, dass das iPad unterschiedlich.

Ich würde vorstellen, es ist etwas zu tun mit dem iPad eigentlich nicht mit einer Datei-Struktur, die als solche download-Dateien, aber ich bin mir nicht sicher.

Hat jemand dieses problem vor? Wenn dem so ist, gibt es einen fix?

  • unrelated: Sie haben zwei Content-Typ-header-Felder. Ein Pick. Auch Content-Transfer-Encoding ist nicht eine HTTP-header-Feld.
  • entfernt die, scheint es keine Wirkung hatte. Aktualisierte Frage zu reflektieren.
InformationsquelleAutor Nick | 2012-01-13
Schreibe einen Kommentar