PHP force download funktioniert nicht?

8

Auf meiner HTML-Seite habe ich eine JQuery-Ajax-Anfrage an ein PHP-Skript gemacht, das einen Download erzwingen sollte, aber nichts passiert?

Auf meiner HTML-Seite (im Click-Event-Handler für einen Link) ...

%Vor%

Und das Download_File.php Skript sieht so aus

%Vor%

Aber aus irgendeinem Grund passiert nichts? Ich habe mir die Antwort-Header in Firebug angeschaut und sehe keine Probleme. Ich benutze Xampp. Jede Hilfe wird sehr geschätzt.

Danke!

    
Rory 26.01.2011, 21:02
quelle

2 Antworten

3

Ok, ich konnte das mit einem JQuery-Plugin, das hier zu finden ist, endlich funktionieren lassen:

Ссылка .

Geht jetzt gut!

    
Rory 01.02.2011, 21:00
quelle
9

Sie sollten Content-Transfer-Encoding angeben. Außerdem sollten Sie die filename auf Ihrem Content-Disposition angeben.

%Vor%

Es ist wichtig, doppelte Anführungszeichen um das filename einzufügen, da dies von RFC 2231 gefordert wird. Es ist bekannt, dass Firefox Probleme beim Herunterladen von Dateien mit Leerzeichen im Dateinamen hat, wenn filename nicht in Anführungszeichen steht.

Überprüfen Sie außerdem, ob nach dem schließenden ?> kein Leerraum vorhanden ist. Wenn nach dem schließenden PHP-Tag noch ein Leerzeichen vorhanden ist, werden die Header nicht an den Browser gesendet.

Als Nebenbemerkung sollten Sie, wenn Sie eine Reihe gängiger Dateitypen zum Download anbieten, diese MIME-Typen angeben. Dies bietet eine bessere Erfahrung für den Endbenutzer. Zum Beispiel könnten Sie so etwas tun:

%Vor%     
Michael Irigoyen 26.01.2011 21:08
quelle

Tags und Links