我现在正在开发一个PHP MVC应用程序,我在使用FPDF时遇到了一些麻烦。代码非常简单,但它不会下载PDF文件(也试图打开它,但它不起作用)。我想我遗漏了一些东西,或者我需要禁用fpdf实例中的一些东西,但我无法解决这个问题。代码如下:
public function downloadPDF(){
require('../FPDF/fpdf.php');
$pdf = new FPDF();
$numero = cal_days_in_month(CAL_GREGORIAN,8,2003);
date_default_timezone_set("Atlantic/Canary");
setlocale(LC_ALL,"es_ES");
$pdf->SetFont("Arial","",14);
$pdf->AddPage();
$mifecha = gmmktime(0,0,0,2,1,2013);
$pdf->Cell(40,10,strtoupper(strftime("%B",$mifecha)),1);
$pdf->Ln();
$pdf->SetFont("Arial","",10);
$pdf->Cell(60,10,"By Ricky",0,1,"C");
$pdf->Output($pdf,"D");
}以防万一:我们的想法是使用此函数将自动下载PDF文件。例如,当单击菜单中的“下载PDF”按钮时。
发布于 2015-03-04 19:19:02
这几乎就是MVC中的header()的问题:
header("Content-type:application/pdf");
header("Content-Disposition:attachment;filename='downloaded.pdf'");如果你正确地设置了这些,你应该是正确的。
请记住,header()必须在任何输入之前调用,否则它将无法工作
发布于 2015-03-04 19:38:36
好吧,这是一个如此明显的错误,我没有注意到。我用的是这个:
$pdf->Output($pdf,"D");FPDF的输出函数接收两个字符串参数(名称、输出类型)。我没有给这个函数一个名称字符串,而是给它一个$pdf对象。当我修复它的时候,它工作得很好,结果是这样的:
$pdf->Output("PDF name","I");顺便说一句,谢谢你的支持。
https://stackoverflow.com/questions/28852780
复制相似问题