Datei über AJAX in PHP herunterladen
In diesem Szenario haben Sie eine Schaltfläche, die einen AJAX-Aufruf an eine PHP-Funktion „csv“ auslöst .php‘. Das PHP-Skript generiert eine CSV-Datei, und Sie möchten sie nach Abschluss entweder sofort oder zwangsweise herunterladen.
Der bereitgestellte PHP-Code gibt, wenn er in „csv.php“ ausgeführt wird, den Inhalt der Datei auf der Seite aus einen Download starten. Dies liegt daran, dass AJAX nicht nativ für Dateidownloads konzipiert ist.
Lösung:
Um einen Dateidownload mit PHP zu erzwingen, können Sie die folgende Technik anwenden:
Erstellen Sie ein neues Fenster mit JavaScript:
window.open("csv.php", "_blank");
Den aktuellen Dokumentspeicherort umleiten (Download erzwingen):
document.location = "csv.php";
Dieser Ansatz initiiert eine neue HTTP-Anfrage. fordert den Browser auf, die Datei herunterzuladen. Die gewünschten Header-Einstellungen für die Download-Initiierung sind in „csv.php“ enthalten.
Das obige ist der detaillierte Inhalt vonWie kann ich einen durch AJAX ausgelösten Dateidownload von einem PHP-Skript erzwingen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!