0

我正在使用 mssql 在 IIS 6 上运行 PHP。我已通过 php 脚本将文件上传到我的网络服务器。检查服务器上的文件后,文件正常且未损坏。但是,当我在我的网站上有一个尝试下载文件的链接时,它说文件已损坏。

我知道文件没有损坏,因为如果我查看服务器上的文件,我可以完美地查看它。

似乎这是一个常见问题,因为此处发布了类似问题:

http://www.bigresource.com/Tracker/Track-php-1pAakBhT/

任何帮助将非常感激。

谢谢,

我的下载代码如下:

$filesize = $rows->filesize;
$filepath = $rows->filepath;

header("Content-Disposition: attachment; filename=$filename");
header("Content-length: $filesize");
header("Content-type: application/pdf");
header("Cache-control: must-revalidate");
header("Content-Description: PHP Generated Data");

readfile($filepath);

修正:“只要确保你之前和/或之后没有空格或新闻行”

4

2 回答 2

1

我敢打赌*啤酒**有 PHP 错误消息破坏了原本可以下载的文件。

使用记事本查看下载文件的源代码。

* 奖品只能在德国科隆兑换。必须年满 18 岁才能参加。

** 1 Kölsch按当地平均价格计算。

于 2010-04-22T11:42:44.377 回答
1

如果您使用 IE 下载 PDF,您可以尝试:

header("Cache-Control: private");
header("Content-Transfer-Encoding: binary");

这对我们有用:p。

于 2010-04-22T11:49:19.757 回答