当前位置:  开发笔记 > 编程语言 > 正文

正确的方法来触发文件下载(在PHP中)?

如何解决《正确的方法来触发文件下载(在PHP中)?》经验,为你挑选了1个好方法。

快速(并且希望简单)问题:我需要触发下载由PHP文件生成的PDF文件.我可以做这个:

Download

但我应该这样做吗?可能是Javascript?上面的工作,但窗口显示"正在加载...",直到下载开始.我想向用户提供一些反馈,说明正在发生的事情.

想法?

注意:我已经有了从服务器发送文件的代码.它完美地运作.这个问题只是关于如何最好地从客户端调用该脚本.

有些网站会自动启动下载.他们是怎么做到的?

直接URL的问题在于,如果PHP脚本错误,它将替换现有页面的内容,这不是我想要的.



1> Luca Matteis..:

编辑

是的javascript,类似于:

Download

如果您需要实际了解下载何时开始,您可能需要调用iframe然后在其上使用"onload"事件...例如:

// javascript
function downloadPdf(el) {
    var iframe = document.createElement("iframe");
    iframe.src = "download.php";
    iframe.onload = function() {
        // iframe has finished loading, download has started
        el.innerHTML = "Download";
    }
    iframe.style.display = "none";
    document.body.appendChild(iframe);
}

推荐阅读
雨天是最美
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有