Sie müssen einen Proxy für die Datei verwenden. Sagen Sie etwas wie diese PHP-Datei:
<?php
$file = $_GET["file"]; // Get the file.
header("Content-disposition: attachment"); // And other headers for the file.
echo file_get_contents($file); // Start the file.
// Update the counter.
file_put_contents(intval(file_get_contents("count.txt")) + 1, "count.txt");
?>
Auf eine gute Note, diese // Update
Code wird nur ausgeführt, wenn die Anforderung gesendet wird, und Datei heruntergeladen ist voll. Korrigiere mich, wenn ich falsch liege.
Wenn die Anfrage gesendet und der Code ausgeführt wird, startet Google Chrome und Firefox den Download der Datei, wenn das Dialogfeld "Speichern" angezeigt wird, dh wenn das Dialogfeld "Speichern" geöffnet ist, hat die Datei bereits geöffnet Mit dem Herunterladen wird begonnen, und wenn auf Abbrechen geklickt wird, erhält der Benutzer die Datei nicht, aber der Server empfängt die Anfrage bereits. Es ist also so, als würde man eine Datei herunterladen und löschen.
Hinweis: Bevor irgendein Genie und sagt kommt, das ist verletzlich, file-name
fehlt, usw., lassen Sie mich Ihnen weit voraus sagen, das ist nur eine Idee ist, die OP zu helfen.
ja, es funktioniert ... –