基本上,我们有一个PHP文件,它使用PHP标头输出文件类型。
我们希望它能像这样工作:
用户点击链接,页面打开,下载提示出现,然后提示下载的页面(主php页面)重定向到另一个页面...
我该怎么做呢?我希望它只在下载提示交付给用户后才重定向。
所以..谢谢你的页面。
可以这样做:
header('Pragma: public');
header('Expires: 0');
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Cache-Control: public', false);
header('Content-Description: File Transfer');
header('Content-Type: '.$type);
header('Accept-Ranges: bytes');
header('Content-Disposition: attachment; filename="' . $filename . '"');
header('Content-Transfer-Encoding: binary');
header('Content-Length: '.filesize($file));
/* sleep for say 3 seconds.. */
header('Location: thankyou.php');
exit();
这段代码纯粹是作为一个例子编写的,但我们怎么能创建这样的东西呢?
然后弹出下载提示,等待3秒钟,然后将原始页面指向感谢页面。
答案 0 :(得分:0)
HTTP标头一次全部输出(保存为分块发送,但我对HTTP是否允许标头有点模糊)。
This question看起来很相似。
答案 1 :(得分:0)
标题('位置:thankyou.php');
会杀了你的下载,
如果你睡觉你停止所有的东西,浏览器不会收到文件,它只会重定向到thank-you.php