Генерация файлов fpdf с циклом в php - PullRequest
0 голосов
/ 01 сентября 2018

У меня есть вопрос к вам, ребята. Я хочу сгенерировать pdf файлы, используя php fpdf с разными именами файлов для каждого файла. Вот мой код

<?php
$no= 1;
$data = mysql_query("SELECT * FROM file");
while($c_data = mysql_fetch_array($data)){
$cek_pengesahan = mysql_query("SELECT * FROM simpeg_pangkat.pengesahan where 
tmt = '$data[tmt_baru]'");
$pengesahan = mysql_fetch_array($cek_pengesahan);
$file_name = 'File_'.$no++.'.pdf';
require('fpdf181/fpdf.php');
$pdf = new FPDF('P','mm','legal');
$pdf->AddPage();
$pdf->SetFont('Arial','B',12);
$pdf->SetXY(100,50-6);
$pdf->Cell(1000,10,'PETIKAN',0,'C');
$pdf->SetFont('Arial','B',12);
$pdf->SetXY(74,55-6);
$pdf->Cell(1000,10,'KEPUTUSAN BUPATI LUMAJANG',0,'C');
$pdf->SetFont('Arial','',12);
$pdf->SetXY(79,60-6);
$pdf->Cell(1000,10,'NOMOR : '.$pengesahan[no_sk],0,'C');
$pdf->SetXY(99,65-6);
$pdf->Cell(1000,10,'TENTANG',0,'C');
$pdf->Output("$file_name",'F');
}
?>

Предполагается, что он будет генерировать (File_1.pdf, File_2.pdf, File_3.pdf) файлы. но после выполнения этого кода он генерирует только File_1.pdf .. File_2.pdf и File_3.pdf не создаются.

1 Ответ

0 голосов
/ 01 сентября 2018

Поставьте требуемый ('fpdf181 / fpdf.php'); вне цикла или используйте require_once ('fpdf181 / fpdf.php'); Поскольку вы используете его внутри цикла, он будет включать тот же класс во 2-й итерации, что приведет к дублированию определения класса.

Кроме того, параметры для метода вывода должны быть обращены следующим образом

$pdf->Output('F',"$file_name");

Согласно документации, функция вывода выглядит следующим образом

Вывод строки ([string dest [, имя строки [, логическое isUTF8]]])

Описание

Отправьте документ в указанное место назначения: браузер, файл или строку. В случае браузера может использоваться средство просмотра PDF или принудительная загрузка. Метод сначала вызывает Close (), если необходимо завершить документ. Параметры

Dest

Пункт назначения, куда отправить документ. Это может быть одно из следующих:

I: отправить файл в браузер. Средство просмотра PDF используется, если доступно.

D: отправить в браузер и принудительно загрузить файл с именем, указанным по имени.

F: сохранить в локальный файл с именем, указанным по имени (может содержать путь).

S: вернуть документ в виде строки.

Значением по умолчанию является I.

имя

Имя файла. Это игнорируется в случае назначения S. Значением по умолчанию является doc.pdf.

...