【问题标题】:PHP: Adobe Reader can't open PDF files created with fpdfPHP:Adobe Reader 无法打开使用 fpdf 创建的 PDF 文件
【发布时间】:2018-04-28 07:48:17
【问题描述】:

我使用 fpdf 生成了 pdf 文件,但出现错误。 Adobe 阅读器无法打开“invoice.pdf”,因为它不是受支持的文件类型或文件已损坏。任何帮助将不胜感激!

<?php 
$f_name=$_POST['first-name'];

if(isset($_POST['submit']))
{   
$f_name=$_POST['name'];
$l_name=$_POST['last-name'];
$email=$_POST['email'];

require("fpdf/fpdf.php");
$fpdf=new FPDF();
$fpdf->AddPage();
$fpdf->setFont("Arial","B",16);
$fpdf->Cell(0,10,"Invoice",1,1,"C");
$fpdf->Cell(95,10,"Name:",1,0,"C");
$fpdf->Cell(95,10,$f_name,1,1,"C");
$fpdf->Cell(95,10,"Last Name:",1,0,"C");
$fpdf->Cell(95,10,$l_name,1,1,"C");
$fpdf->Cell(95,10,"Email:",1,0,"C");
$fpdf->Cell(95,10,$email,1,1,"C");

$file_location = $_SERVER['DOCUMENT_ROOT']."/invoice/up_pdfs/".$f_name.".pdf";
 file_put_contents($file_location,$fpdf); 

ob_clean(); 

$fpdf->output();
 header("Location: index.php");
 }
 ?>

【问题讨论】:

  • exit(); 之前 require("fpdf/fpdf.php"); 并检查您的逻辑是否有任何错误?并检查您的$_POST 值,可能有错误。
  • @VipulSolanki,没有发现错误..
  • 然后检查 $f_name,$l_name,$emailrequire("fpdf/fpdf.php"); 路径如果这没问题,然后尝试不使用 file_location,例如 file_put_contents($f_name.".pdf",$fpdf);
  • @VipulSolanki,我已经根据您的建议尝试了该表格。我正在获取帖子值并且生成的 pdf 未打开
  • 打印此路径$_SERVER['DOCUMENT_ROOT']."/invoice/up_pdfs/" 并检查它是否正确然后尝试使用$fpdf-&gt;Output($file_location,'F');

标签: php redirect location adobe fpdf


【解决方案1】:

使用$fpdf-&gt;Output($file_location,'F'); 并删除file_put_contents($file_location,$fpdf);

   if(isset($_POST['submit']))
   {   
   $f_name=$_POST['name'];
   $l_name=$_POST['last-name'];
   $email=$_POST['email'];

   require("fpdf/fpdf.php");
   $fpdf=new FPDF();
   $fpdf->AddPage();
   $fpdf->setFont("Arial","B",16);
   $fpdf->Cell(0,10,"Invoice",1,1,"C");
   $fpdf->Cell(95,10,"Name:",1,0,"C");
   $fpdf->Cell(95,10,$f_name,1,1,"C");
   $fpdf->Cell(95,10,"Last Name:",1,0,"C");
   $fpdf->Cell(95,10,$l_name,1,1,"C");
   $fpdf->Cell(95,10,"Email:",1,0,"C");
   $fpdf->Cell(95,10,$email,1,1,"C");

    $file_location = $_SERVER['DOCUMENT_ROOT']."/invoice/up_pdfs/".$f_name.".pdf";

    ob_clean(); 

    $fpdf->Output($file_location,'F');
    header("Location: index.php");
    }
?>

【讨论】:

    猜你喜欢
    • 2016-05-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多