我正在开发一个从ZippyShare下载文件的辅助项目。我有一个基本的PHP文件,但是我想用Ajax实现一个下载状态指示器。也许这里的某个人能够帮助我吗?这是我找到的here:
的wget命令模板wget <download_link> \
--referer='<referrer>' \
--cookies=off --header "Cookie: JSESSIONID=<session_id>" \
--user-agent='Mozilla/5.0 (Windows NT 6.0) Gecko/20100101 Firefox/14.0.1'
所以我创建了一个非常基本的PHP文件来演示工作下载:
<?php
if (isset($_POST['submit'])) {
$download_link = $_POST['download_link'];
$download_referer = $_POST['download_referer'];
$session_id = $_POST['session_id'];
exec("wget ".$download_link." \ --referer='".$download_referer."' \ --cookies=off --header \"Cookie: JSESSIONID=".$session_id."\" \ --user-agent='Mozilla/5.0 (Windows NT 6.0) Gecko/20100101 Firefox/14.0.1'");
} else {
?>
<form method="POST" action="">
Download Link: <input type="text" id="download_link" name="download_link"><br><br>
Referrer: <input type="text" id="download_referer" name="download_referer"><br><br>
Session ID: <input type="text" id="session_id" name="session_id"><br><br>
<input type="submit" id="submit" name="submit" value="Download File">
</form>
<?php
}
?>
现在我一直坚持如何在这个上集成一个状态指示器,我尝试做类似this的事情,但它没有多大帮助,因为我希望进度条动态地改变下载进度,而不是将其设置为值。
有人可以帮忙吗?谢谢!
答案 0 :(得分:1)
您可以(并且应该)使用PHP中的curl而不是使用exec执行自定义命令。
使用curl,您可以侦听文件流并运行相应的运行进度函数。