通过我网站上的URL下载.jpg文件时,该文件已损坏。我没有测试过很多文件bu t.pdf的下载。我在文件中看到以下错误:
b>警告:filesize()[function.filesize]:对于 /home/content/91/4761691/html/pages/download.php 中的sunny.jpg,stat失败第 89
行第89行是filesize()函数,如下所示......
$ID=stripslashes($_GET['recordid']);
$file = $_GET['file'];
// the absolute path to your directory storing your files.
$path = '../photos/' . $ID . '/';
header("Pragma: public");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Content-Type: application/force-download");
//header("Content-Disposition: attachment; filename=$file");
header('Content-Disposition: attachment;filename="'.$file.'"');
header("Content-Description: File Transfer");
header('Accept-Ranges: bytes');
header('Content-Length: ' . filesize($file)); <========== line 89
readfile($path.$file);
关于为何失败以及如何解决的任何想法?
答案 0 :(得分:2)
您正在编写readfile($path.$file);
来输出文件,因此我假设您还应该编写filesize($path.$file);
来获取同一文件的文件大小。
header('Content-Length: ' . filesize($path.$file));
readfile($path.$file);