如何创建PHP';下载即将开始';页

如何创建PHP';下载即将开始';页,php,Php,我想创建一个PHP页面,显示如下消息 Your download will begin shortly. If it does not start, please click here to restart the download i、 例如,与主要网站上存在的页面类型相同 它的工作原理如下: <a href="download.php?file=abc.zip">Click here</a> 当用户单击该链接时,他会被引导到download.php,它向他显

我想创建一个PHP页面,显示如下消息

Your download will begin shortly.

If it does not start, please click here to restart the download
i、 例如,与主要网站上存在的页面类型相同

它的工作原理如下:

<a href="download.php?file=abc.zip">Click here</a>

当用户单击该链接时,他会被引导到download.php,它向他显示该消息,然后提供文件供下载

我该怎么做


非常感谢

链接需要做两件事之一:

  • 直接指向web服务器上的文件
  • 指向一个PHP脚本,该脚本除了设置适当的头并将文件作为页面主体外,什么也不做。没有文本输出!有关如何实际提供文件,请参见
让浏览器“自行”开始下载的一种方法是使用元刷新标记

另一种方法是使用JavaScript,例如(从Mozilla的Firefox下载页面):



如果要确保文件将被下载(与浏览器或浏览器插件中显示的文件相反),可以设置
内容配置
HTTP头。例如,要强制下载PDF而不是在浏览器插件中打开PDF,请执行以下操作:

header('Content-type: application/pdf');
header('Content-Disposition: attachment; filename="foo.pdf"');
readfile('foo.pdf');
例如,请参见此页面:该页面有文本输出,但文件可供下载。我想复制这样的东西。
<?php
// download.php
$url = 'http://yourdomain/actual/download?link=file.zip'; // build file URL, from your $_POST['file'] most likely
?>
<html>
    <head>
        <!-- 5 seconds -->
          <meta http-equiv="Refresh" content="5; url=<?php echo $url;?>" />
    </head>
    <body>
        Download will start shortly.. or <a href="<?php echo $url;?>">click here</a>
    </body>
</html>
header('Content-type: application/pdf');
header('Content-Disposition: attachment; filename="foo.pdf"');
readfile('foo.pdf');