我有一个网站,播放mp3在一个flash player。如果一个用户点击"播放"flash player自动下载一个mp3和开始播放。

是有一个简单的方法来跟踪有多少次一个特别的歌曲片段(或任何二进制文件)已经被下载?


是玩的链接,链接到的实际 mp3文件,或一些代码 持久性有机污染物的一个球员吗?

如果是后者,你可以容易地加入你的 自己的记录代码在里面跟踪的 点击次数。

如果是前者,你需要的东西 这可以追踪网服务器记录 本身进行区分。我 托管计划,配有志, 不这很好。

这是一个javascript code使答案。

然而,这将是很好的知道如何跟踪下载使用其他方法(没有关主机)。

有帮助吗?

解决方案

有趣的是我写的一个php媒体画廊的所有我的音乐2天前。我有一个类似的问题。我在使用 http://musicplayer.sourceforge.net/ 用于播放机。和播放列表是建立过php.所有音乐的要求去那里一个剧本所谓的断.php?文件=什么

$filename = base64_url_decode($_REQUEST['file']);
header("Cache-Control: public");
header('Content-disposition: attachment; filename='.basename($filename));
header("Content-Transfer-Encoding: binary");
header('Content-Length: '. filesize($filename));

//  Put either file counting code here. either a db or static files

//

readfile($filename);  //and spit the user the file


function base64_url_decode($input) {
    return base64_decode(strtr($input, '-_,', '+/='));
}

而当你打电话给文件使用的是这样的:

function base64_url_encode($input) {
     return strtr(base64_encode($input), '+/=', '-_,');
}

http://us.php.net/manual/en/function.base64-encode.php

如果您使用的一些javascript或flash player(JW播放器),这一要求实际链接,可以mp3文件或什么的,你可以添加的文字"&type=.mp3"因此,最终的领科成为类似:"www.example.com/xfer.php?file=34842ffjfjxfh&type=.mp3".这样,它看起来像它结束一个mp3扩展而不影响文件的链接。

其他提示

用你的httpd日志的文件。安装 http://awstats.sourceforge.net/

使用击:

grep mp3 /var/log/httpd/access_log | wc

如果你的歌/二进制文件是通过阿帕奇,你可以很容易地查询的access_log找出下载的数量。一个简单的后合脚本可查询的记录和保持你的计统计数据的一个数据库。这具有的优势不在你的生活要求码的道路。做的非关键的东西喜欢的统计数据离线是一个很好的想法,以扩大网站,以大量用户。

你甚至可以设立一个Apache.要指令转换*.mp3请求进入查询dubayou工作。它可能是一个优雅的方式,以保持直接请求中,仍然能够补充的日志功能的响应。

是玩的链接,链接到的实际mp3文件,或一些javascript code持久性有机污染物的一个球员吗?

如果是后者,你可以容易地加入你自己的记录代码在里面跟踪的次数。

如果是前者,你需要的东西这可跟踪该网络的服务器登录本身以及进行区分。我主持的计划来与志,这很好。

是否有一个数据库,用于你的音乐图书馆?如果有任何服务器运行的代码时,下载的mp3然后你可以添加额外的代码没有增加的玩计数。你也可以有javascript作出第二次请求增加的玩计数,但这可能导致人/机器人错误地增加数。

我用来作为互联网的无线电站和我们使用单独表格跟踪时间每首歌曲。我们的流是通过电perl脚本运行icecast,使我们触发一个数据库的请求,每次一个新的轨道开始播放。然后计算玩数数我们就会运行查询数数有多少次一首歌是id是在发挥日志。

这问题我有东西像您读通过网络服务器记录的是,大的下载通常可以分为数据的区块之内的日志。这使得调和确切的下载次数相当困难的。

我建议谷歌的分析 事件追踪, 因为这样会注册一次,每次点击上下载的链接。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top