我用php写了一个文件下载程序,文件上传后将文件信息存入数据库,下载前先去数据库中将信息取出后再下载。可是下载后的图片打不开,总是提示文件有错误。请各位朋友赐教。代码如下:
$root = $_SERVER['DOCUMENT_ROOT'];
$name = $root . '/' . $u->getNewName();//newName是上传后在库中保存的名字
$file_size = filesize($name);
$displayName = iconv("utf-8","gb2312",$u->getOldName());oldName是文件的原名字,同时显示 在下载框中
header("Content-Type:application/octet-stream");
header("Accept-Ranges:bytes");
header("Accept-Length:".$file_size);
header("Content-Disposition:attachment;filename=".$displayName);
$buffer = 256;
$file_count = 0;
$fp = fopen($name,'r');
while (!feof($fp) && $file_size - $file_count > 0) {
$content = fread($fp,$buffer);
$file_count += $buffer;
echo $content;
}
fclose($fp);
谢谢各位朋友的回答!
}