1

私は個人用のサイトを開発しようとしています。これまでのところ、Google アナリティクス アカウントといくつかの基本的なインフラストラクチャを取得しています。このサイトの別の質問から取得できたスクリプトを持っているダウンロード機能が欲しいのですが、ダウンロードスクリプト内で tracking.php を呼び出す効率的な方法が見つからないようです。GA が要求を受け取るという意味では成功していませんが、ファイルは別のタブでランダムにダウンロードされます。

現在使用しているダウンロードスクリプトは次のとおりです。

    <?php
$path = $_SERVER['DOCUMENT_ROOT']."/store/files/";
$fullPath = $path.$_GET['id'];


if ($fd = fopen ($fullPath, "r")) {
    $fsize = filesize($fullPath);
    $path_parts = pathinfo($fullPath);
    $ext = strtolower($path_parts["extension"]);
    switch ($ext) {
        case "pdf":
        header("Content-type: application/pdf");
        header("Content-Disposition: attachment; filename=\"".$path_parts["basename"]."\"");
        break;
        default;
        header("Content-type: application/octet-stream");
        header("Content-Disposition: filename=\"".$path_parts["basename"]."\"");
    }
    header("Content-length: $fsize");
    header("Cache-control: private");
    while(!feof($fd)) {
        $buffer = fread($fd, 2048);
        echo $buffer;


    }

}

fclose ($fd);
exit;
?>

Google Analytics トラッキング コード (tracking.php) は、同じディレクトリ内の別の PHP ファイルにあります。exec および include 関数を使用しようとしましたが、役に立ちませんでした。

この問題を修正する方法についてのアイデアはありますか?

4

1 に答える 1

0

おそらく、何らかのイベント追跡でこれを回避するでしょう。

基本的に、ダウンロード内で追跡するのではなく、ユーザーがダウンロード リンクをクリックしたことを追跡します。

<a href="toyourdownloadscript.php" onClick="_gaq.push(['_trackEvent', 'Downloads', 'Download', 'The name of your download']);">Download</a>
于 2012-11-30T07:19:11.860 に答える