Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/266.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
HTML5下载与javascript onlick相结合_Javascript_Php_Database_Html_File - Fatal编程技术网

HTML5下载与javascript onlick相结合

HTML5下载与javascript onlick相结合,javascript,php,database,html,file,Javascript,Php,Database,Html,File,我使用以下代码强制下载mp3文件 <a id="download" href="http://locationtomp3file.mp3" download>Start Download</a> 上面的代码可以顺利下载。但是,我希望跟踪下载的数量并更新该歌曲的数据库行。除非我的属性具有href=“#”,否则添加onclick不起作用。有什么解决方法或建议吗?看来后端由您控制。我只需要计算该特定文件的http服务器的GET条目。我认为它更好,因为它是异步的,并且防止了

我使用以下代码强制下载mp3文件

<a id="download" href="http://locationtomp3file.mp3" download>Start Download</a>


上面的代码可以顺利下载。但是,我希望跟踪下载的数量并更新该歌曲的数据库行。除非我的属性具有href=“#”,否则添加onclick不起作用。有什么解决方法或建议吗?

看来后端由您控制。我只需要计算该特定文件的http服务器的GET条目。我认为它更好,因为它是异步的,并且防止了准确的计数(如果使用ajax,并且ajax请求失败,您将错过一次计数)

在redhat/apache2环境中,它与
grep“locationtomp3file.mp3”/var/log/http/access|u log | wc-l
一样简单。每隔一次,然后在服务器上运行一次,并用结果更新数据库,我就是这样做的。您可能没有意识到这一点,但实际上,在“脱机”模式下,在后台以批处理方式运行大量任务是非常好和健康的。如果愿意,您可以每5分钟运行一次,只要它们不是资源密集型的。


<a id="download" href="#" download>Start Download</a>

<!-- With Jquery -->
<script>
$("#download").click(function() {
    window.location = 'http://locationtomp3file.mp3';
});
</script>
$(“#下载”)。单击(函数(){ window.location=http://locationtomp3file.mp3'; });
我忘了提到我的网站的这个版本只适用于所有android用户。在许多下载文件的方法中,我发现这是唯一一种在所有android浏览器上强制下载的完美方法。我还有另外一种方法可以使用javascript下载并创建blob链接,但问题是,文件下载在后台完成后就会出现。对于大文件来说,这需要时间,并且会让用户感到下载按钮不起作用。如果你想使用JS,你需要使用ajax。你的问题缺少代码/细节。如果要跟踪,则需要更新表集col\u x=col\u x+1,其中col\u y=?作为示例。还需要使用带有标题的强制下载方法。