Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/371.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
Php 当用户导航到另一页时自动启动下载_Php_Javascript_Download - Fatal编程技术网

Php 当用户导航到另一页时自动启动下载

Php 当用户导航到另一页时自动启动下载,php,javascript,download,Php,Javascript,Download,我想知道如何实现我在几个网站上看到的效果,在那里我单击“立即下载”链接,它会将我带到另一个页面,下载会自动开始。实现此目的的最佳方法是什么?重定向到发出以下标题的页面: header("Content-Disposition: attachment; filename=$filename"); header("Content-Length: $length"); 有关$filename的限制,请参阅 编辑作为对安德尔答案的回应,php等效于x秒后重定向: header("Refresh: 2;

我想知道如何实现我在几个网站上看到的效果,在那里我单击“立即下载”链接,它会将我带到另一个页面,下载会自动开始。实现此目的的最佳方法是什么?

重定向到发出以下标题的页面:

header("Content-Disposition: attachment; filename=$filename");
header("Content-Length: $length");
有关
$filename
的限制,请参阅

编辑作为对安德尔答案的回应,php等效于x秒后重定向:

header("Refresh: 2; url=start_download.php");

(虽然您应该正式指定一个完整的URL,但我认为)start_download.php将包含上面的两行。

首先显示包含一些内容的页面(请稍候,诸如此类),然后重定向到文件本身或输出文件的脚本。 重定向通过meta标记或javascript完成:

  • html:
    其中«5»以秒为单位
  • 页面加载时的js:
    setTimeout(“location.href=http://example.com/foo.zip“,5000)
    其中«5000»以毫秒为单位
  • 如果您选择通过php脚本输出文件,请遵循mvds的答案