如何在移动浏览器上使用PHP强制下载文件?

时间:2011-09-18 12:39:02

标签: php file browser mobile download

我想写一个php脚本来下载移动浏览器上的一些文件(扩展名 - .apk,.dcm,.pdf,.zip等...)。我已经编写了一个PHP代码来下载这些文件,它在所有浏览器(不是移动浏览器)上运行良好。但我尝试使用HTC手机,它试图打开文件而不是下载(如打开网页)。

如何在移动浏览器上启用下载?

谢谢

PS: 我就是这样做的。 我使用jquery代码将一些参数发送到php文件,它将返回相应的下载文件路径。

jQuery代码片段是:

$.post('saveData.php',{ name: name.val(), email: email.val(), phone:phone.val(), address:address.val(), version:vers, swVersion:swvers, type:type }, 
function(data) 
{                       
    var links = data;
    document.body.innerHTML += "<iframe src='" + links + "' style='display:hide;' ></iframe>";
});

“links”变量包含从php文件返回的下载路径。 iframe允许下载窗口弹出。但它不适用于移动浏览器。

1 个答案:

答案 0 :(得分:5)

尝试使用以下标题:

header('Content-Type: application/force-download');
header('Content-Disposition: attachment; filename="filename"');

我们的想法是将内容类型设置为浏览器不知道如何打开的内容 - 这样就会显示保存对话框。您可以尝试使用实际的MIME类型,它应该可以工作,但我现在无法测试它。