簡體   English   中英

使用FPDF的PHP到PDF無法打開我的pdf文件(已損壞)

[英]PHP to PDF using FPDF failing to open my pdf file(broken)

只是想問一下為什么我的pdf文件沒有在硝基pdf中打開。 我正在使用fpdf。 我只是想在我的pd中有一張漂亮的桌子,但是似乎有一個錯誤。 誰能弄清楚是哪一個? 這是代碼:

<?php

mysql_select_db($database_iexam, $iexam);
$query_getstudent = sprintf("SELECT * FROM exam_students WHERE stud_subject_id = %s", GetSQLValueString($colname_getstudent, "int"));
$getstudent = mysql_query($query_getstudent, $iexam) or die(mysql_error());
$row_getstudent = mysql_fetch_assoc($getstudent);
$totalRows_getstudent = mysql_num_rows($getstudent);

//defining objects
  $subject_id = $_SESSION['subject_id'];
  $getsub = mysql_query("SELECT subject_description FROM exam_subjects WHERE subject_id = '$subject_id'")or die(mysql_error());
  while($gotit = mysql_fetch_array($getsub)){
  $subj = $gotit['subject_description'];
  }

require_once("fpdf/fpdf.php");

class PDF extends FPDF
{

function FancyTable()
{
    // Colors, line width and bold font
    $this->SetFillColor(255,0,0);
    $this->SetTextColor(255);
    $this->SetDrawColor(128,0,0);
    $this->SetLineWidth(.3);
    // Header
    $w = array(40, 35, 40, 45);
        $this->Cell($w,7,$header["Name"],1,0,'C',true);
        $this->Cell($w,7,$header["ID Number"],1,0,'C',true);
        $this->Cell($w,7,$header["Passwords"],1,0,'C',true);

    $this->Ln();
    // Color and font restoration
    $this->SetFillColor(224,235,255);
    $this->SetTextColor(0);
    // Data
    $fill = false;

    do {
  $shanks = $row_getstudent['stud_valid_nos'];
    $mugiwara = mysql_query("SELECT * FROM exam_sections WHERE sec_id_num = '$shanks'")or die(mysql_error());
    while($ben = mysql_fetch_array($mugiwara)){
    $beckman = $ben['sec_firstname']; 
    $usopp = $ben['sec_lastname'];
    }

    $trafalgar = $row_getstudent['stud_id'];
  $vergo = mysql_query("SELECT pass_password FROM exam_passwords WHERE pass_user_id = '$trafalgar'")or die(mysql_error());
    while($caesar = mysql_fetch_array($vergo)){
    $smoker = $caesar['pass_password'];
    }

        $this->Cell($w[0],6,"$beckman $usopp",'LR',0,'L',$fill);
        $this->Cell($w[1],6,"Shanks",'LR',0,'R',$fill);
        $this->Cell($w[2],6,"$smoker",'LR',0,'R',$fill);
        $this->Ln();
        $fill = !$fill;


} while ($row_getstudent = mysql_fetch_assoc($getstudent));


    // Closing line
    $this->Cell(array_sum($w),0,'','T');
}
}
$pdf = new PDF();
$pdf->AddPage();
$pdf->FancyTable();
$pdf->Output();
$pdf->SetAutoPageBreak(true, 20);
$pdf->SetMargins(20, 20, 20);
$pdf->Cell(40,10,'PDF for '.$subj);
$pdf->Ln(10);
$pdf->Output();?>

這些行的第3條爭論中未定義$ header:

$this->Cell($w,7,$header["Name"],1,0,'C',true);
$this->Cell($w,7,$header["ID Number"],1,0,'C',true);
$this->Cell($w,7,$header["Passwords"],1,0,'C',true);

在輸出之前先在ob_start()和ob_clean()上面做類似的事情

 ob_start(); $pdf = new PDF(); $pdf->AddPage(); $pdf->FancyTable(); $pdf->Output(); $pdf->SetAutoPageBreak(true, 20); $pdf->SetMargins(20, 20, 20); $pdf->Cell(40,10,'PDF for '.$subj); $pdf->Ln(10); ob_clean(); $pdf->Output(); 

在輸出之前先在ob_start()和ob_clean()上面做類似的事情

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM