使用FPDF库- codeigniter清空输出PDF

xfyts7mz  于 2022-12-16  发布在  其他
关注(0)|答案(1)|浏览(135)

我打算使用FPDF库生成一个PDF报告,但是输出是空白的。没有显示错误,我该如何解决这个问题?
无论如何,我在LOCALHOST中尝试了这段代码,它工作得很好,但是当我将它上传到云时,没有输出显示。我试图使函数输出像这样。

$this->fpdf->OUTPUT('try.pdf','I'); but nothing happens..

注意:在我的输出C:/backup/employee_... php中,输出位于文件夹中,没有错误,工作正常。但是当我上传此输出时,没有显示任何输出
这是我的控制器:

public function backup_employees_pdf()
{

    $this->load->library('fpdf');   

    define('FPDF_FONTPATH',$this->config->item('fonts_path'));
    $this->fpdf =new FPDF('L', 'mm', 'Legal', true, 'UTF-8', false);
    $this->fpdf->AliasNbPages();
    $this->fpdf->AddPage();

    //load data
    $data = array();
    $row = $this->m_employee->load_data_employees();
    $data = $row->result();

    // Whatever written here will come in header of the pdf file.

    $this->fpdf->Image('assets/images1/mpowerstafflogo.jpg',10,5,50,50,'','www.mpowerstaff.com');
    $this->fpdf->SetFont('Arial','B',15);
    $this->fpdf->Cell(140);
    $this->fpdf->Cell(50,10,'Employee File Management Website',0,0,'C');
    $this->fpdf->Ln(5);
    $this->fpdf->Cell(140);
    $this->fpdf->Ln(5);
    $this->fpdf->SetFont('Arial','',12);
    $this->fpdf->Cell(140);
    $this->fpdf->Cell(50,10,'3F Room 305 Jackson Bldg. 926 Arnaiz Ave., San Loreno Village Makati City, 1223 PHILIPPINES',0,0,'C');
    $this->fpdf->Ln(5);     
    $this->fpdf->Ln(5);
    $this->fpdf->Cell(140);
    $this->fpdf->Cell(50,10,'Tel. (632) 810-4026 * 810-9121',0,0,'C');
    $this->fpdf->Ln(5);
    $this->fpdf->Ln(5);
    $this->fpdf->Cell(140);
    $this->fpdf->Cell(50,10,'Email: mpowerstaff@yahoo.com',0,0,'C');
    $this->fpdf->Ln(10);
    $this->fpdf->SetFont('Arial','B',12);
    $this->fpdf->Cell(140);
    $this->fpdf->Cell(50,10,'Employees Report',0,0,'C');
    $this->fpdf->Ln(15);

    // Colors, line width and bold font
    $this->fpdf->SetFillColor(105,100,231);
    $this->fpdf->SetTextColor(255);
    $this->fpdf->SetDrawColor(60,89,117);
    $this->fpdf->SetLineWidth(0.3);
    $this->fpdf->SetFont('', 'B');

    // Header   
    $w = array(35,80,40,40,40,40,61);

    $this->fpdf->Ln();

    //border LRTB
    $this->fpdf->Cell(5);
    $this->fpdf->Cell(90,10,'NAME',1,0,'C', 'LR');
    $this->fpdf->Cell(60,10,'ACCOUNT NUMBER',1,0,'C', 'LR');
    $this->fpdf->Cell(60,10,'ADDRESS',1,0,'C', 'LR');
    $this->fpdf->Cell(60,10,'BIRTHDAY',1,0,'C', 'LR');
    $this->fpdf->Cell(60,10,'CONTACT NO.',1,0,'C', 'LR');
    $this->fpdf->Ln(10);

    // Color and font restoration
    $this->fpdf->SetFillColor(224, 235, 255);
    $this->fpdf->SetTextColor(0);
    $this->fpdf->SetFont('');

    $fill = 0;
    //data
    foreach($data as $empsItem)
    {      
        $this->fpdf->Cell(5);
        $this->fpdf->Cell(90,10,$empsItem->name,1,0,'C',$fill);
        $this->fpdf->Cell(60,10,$empsItem->account_no,1,0,'C',$fill);
        $this->fpdf->Cell(60,10,$empsItem->address,1,0,'C',$fill);
        $this->fpdf->Cell(60,10,$empsItem->birthday,1,0,'C',$fill);
        $this->fpdf->Cell(60,10,$empsItem->contact_no,1,0,'C',$fill);
        $this->fpdf->Ln(10);
        $fill=!$fill;   
    }

    $this->fpdf->Ln(30);
    $this->fpdf->SetFont('Arial','B',10);
    $this->fpdf->Cell(20, 5,'Total Employees: '.$row->num_rows(), '', 0, 'LR', 0);

    $this->fpdf->SetY(184);
    $this->fpdf->SetFont('Arial','I',8);
    $this->fpdf->Cell(0,10,'Copyright. All Rights Reserved',0,0,'C');
    $this->fpdf->Cell(0,10,'Page '.$this->fpdf->PageNo().' of {nb}',0,0,'C');

    $dir = 'C:/backup/';
    $filename = "employee report";

    $this->fpdf->Output($dir.$filename.'.pdf');
}

//====这是我的模型===/

public function load_data_employees()
{
    $query = $this->db->query("SELECT concat(e_first_name,' ',e_middle_name,' ',e_last_name) AS 'name',account_number AS 'account_no',address AS 'address',birthday AS 'birthday',contact_number AS 'contact_no'FROM tb_emp where status='available'");
    return $query;
}

//==配置PHP==//

$config['fonts_path']= "./system/fonts/font/";

这是细节。我试图修复这个问题,但仍然没有输出。

bxfogqkk

bxfogqkk1#

我遇到了同样的问题,这就是我的解决方案:
而不是使用

$this->fpdf =new FPDF()

我以前

$pdf = new FPDF();

那么你可以使用$pdf-〉...而不是$this-〉pdf-〉...
下面是一个例子:

define('FPDF_FONTPATH',$this->config->item('fonts_path'));
$this->load->library(array('fpdf','fpdf_rotate','pdf'));
$this->pdf->Open();
$pdf = new PDF();
$pdf->AliasNbPages();
$pdf->AddPage();
$pdf->SetFont('Arial', '', 12);
$pdf->SetDrawColor(0);
$pdf->MultiCell(100,5,"Test\n line of text");
$pdf->Output('test.pdf', 'D');

工作起来像一个魅力;)

相关问题