我正在使用mongodb和php。我有协议下载选项,当用户单击用户时,将下载协议。单击时,我已经导航到 php 文件下载代码所在的脚本代码是
$mongoDbA = $mongoDb->findOne(array("agency_id" => new MongoId($_GET['id'])));
$filename = '../../images/upload/'.$mongoDbA['file'];
if (file_exists($filename))
{
header('Content-Description: File Transfer');
header('Content-Type: text/pdf');
header('Content-Disposition: attachment; filename='.basename($filename));
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize($filename));
readfile($filename);
exit;
}
我只允许上传pdf文件,所以数据库中只有pdf文件
当我单击时,它会给我错误并给我没有扩展名的白色文件,大小很难是 1 kb....发生了什么事情???
$filename = './images/upload/'.$mongoDbA['file'];
$fileinfo = pathinfo($filename);
$sendname = $fileinfo['filename'] . '.' . $fileinfo['extension'];
header('Content-Type: application/pdf');
header('Content-Disposition: attachment; filename="$sendname"');
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize($filename));
readfile($filename);
exit;