2011-12-15 154 views
1

我正在构建一个基于自定义的播放器,可以访问3个播放列表。客户选择他们想要听的播放列表。在一天结束时,我需要计算一下该播放列表中每首歌曲听过多少次。这可以在HTML5中完成,还是需要在php和MySql中执行此操作?这必须适用于iOS,Ipad以及Windows和Android。如何使用HTML5,Jplayer和mysql从播放列表中跟踪歌曲播放?

+0

你可以发布你的当前代码,一个链接到一个jsFiddle或开发网站?你想在哪里存储播放统计?在一个cookie?服务器端数据库?client-端HTML应用缓存?服务器端XML文件?服务器端纯文本文件? – Lloyd 2011-12-17 00:00:58

回答

1

我之前做过这样的事情,我想到的解决方案是通过PHP文件访问MP3文件,该文件将请求注册到数据库中,然后获取文件并提供它(添加标题浏览器将其识别为MP3)。喜欢的东西:

//跟踪文件后,你确认这是一个有效的请求(文件名在URL中传递的

?mp3=[mp3 filename] 
$logged = track_this($_GET['mp3']); //some tracking function 

//now spit it out... 

$file_name = "song_name.mp3"; 
$file = '/path/to/files/'.$_GET['mp3'].'.mp3'; 

$mm_type="application/octet-stream"; 

header("Cache-Control: public, must-revalidate"); 
header("Pragma: hack"); 
header("Content-Type: " . $mm_type); 
header("Content-Length: " .(string)(filesize($file))); 
header('Content-Disposition: attachment; filename="'.$file_name.'"'); 
header("Content-Transfer-Encoding: binary\n"); 

print file_get_contents($file); 

它工作得很好,虽然你无法跟踪他们是否停止轨道部分方式通过(所以这是非常简单的指标)

+0

我正在构建的播放器兼容iPad,因此我们使用的是mp4,即我是容易的部分。你是说我不使用XML播放列表,而是访问一个MySQL数据库呢?在这一点上,你失去了我,$ file ='/ path/to/files /'你如何路径数据库?谢谢你的帮助,很抱歉被问到什么可能是一个愚蠢的问题,但从XML到数据库的飞跃避开了我.. – 2011-12-15 22:15:38

相关问题