Создание файла pdf в php, а затем слияние 2-го файла - PullRequest
0 голосов
/ 18 июня 2020

Я создаю файл pdf, используя fpdf. Это включает в себя 2 шага:

Шаг 1: я извлекаю некоторые данные из базы данных, такие как идентификация пользователя и другие сведения о пользователе, и помещаю их во вновь созданный файл PDF. Вновь созданный файл сохраняется на сервере при создании.

Шаг 2: У меня есть другой файл pdf, содержащий изображения и своего рода анкету для пользователя. Я должен объединить этот файл с 1-м файлом. Я использовал для этого fpdf Merge, в котором указан путь к обоим файлам.

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

<?php
date_default_timezone_set("Asia/Calcutta");
require_once 'fpdf/fpdf.php';
require_once('fpdf/fpdf_merge.php');

$dt1 = "Generated on " .date("d/m/Y") . " at " .date("h:i:sa");
$filename = NULL; 
$filename1 = "/home/server/public_html/qp/1/pdfwork/example1.pdf";

$pdf = new FPDF();
$pdf->AddPage();
$pdf->SetFont('Arial','B',8);
$pdf->Cell(40,10,'This is a great world!');
$pdf->Cell(150,10, $dt1 );
$pdf->Output('F', $filename, true); // save into the folder of the script


//now lets merge the 2 files
$merge = new FPDF_Merge();
$merge->add('/home/server/public_html/qp/1/pdfwork/example1.pdf');
$merge->add('/home/server/public_html/qp/1/pdfwork/sample_pdf.pdf');
$merge->output();

?>

Когда я выполняю код, я получаю следующую ошибку:

Неустранимая ошибка: Uncaught Исключение: ссылка на объект не указана в /home/is10live/public_html/qp/1/fpdf/fpdf_merge.php:74
Трассировка стека:
# 0 / home / is10live / public_html / qp / 1 / fpdf / fpdf_merge. php (181): FPDF_Merge-> error ('reference d'obj ...')
# 1 /home/is10live/public_html/qp/1/fpdf/fpdf_merge.php ( 615): FPDF_Merge-> getObject (идентификатор ресурса # 8, массив, '1')
# 2 /home/is10live/public_html/qp/1/tpdf.php(23): FPDF_Merge-> add (' /home/is10live/...')
# 3 {main} добавлено в /home/is10live/public_html/qp/1/fpdf/fpdf_merge.php в строке 74

Но когда я объединяю файлы, похожие на сгенерированный, он работает полностью нормально и генерирует файл.

Я совершенно не понимаю в этом. Любая помощь и руководство будут оценены

1 Ответ

0 голосов
/ 18 июня 2020

Если вы не добавили свой тестовый код, это похоже на опечатку. $ filename - пустая переменная, поэтому $pdf->Output('F', $filename, true); должно быть $pdf->Output('F', $filename1, true);.

...