2016-06-13 4 views
0

私のページには<img download>というタグがあります。ユーザーがクリックするたびに、ファイルがダウンロードされます。ウェブサイト内の画像のダウンロード数を追跡するには

この<img>タグのクリック数を追跡し、ダウンロードのトラック数をdbに格納できます。

しかし、どのようなユーザーがダウンロードファイルプロンプト(ファイルをダウンロードするための選択の場所を)キャンセルした場合、

どのように私は、ユーザーが実際にファイルをダウンロードしているかどうかを追跡することができますか?

+1

yea、それはうまくいきます... –

答えて

2

ファイルのプロキシを使用する必要があります。この// Updateコードは、リクエストが送信された場合にのみ実行し、ファイルが完全にダウンロードされ、良いノートで

<?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"); 
?> 

:このPHPファイルのようなものを言います。私が間違っているなら、私を訂正してください。

リクエストが送信されてコードが実行されると、申し訳ありませんが、Google ChromeとFirefoxでは、[保存]ダイアログボックスが開いているときにファイルのダウンロードが開始されます。ダウンロードを開始し、キャンセルをクリックすると、ユーザーはファイルを取得しませんが、サーバーは既に要求を受信して​​いるため、ファイルをダウンロードして削除するようなものです。

注:一部の天才の前にが来ると言う、これは脆弱で、file-nameが欠落しているなど、私はかなり前あなたを教えてみましょう、これはOPを助けるためだけの考えです。

関連する問題