Convert HTML form data into a PDF file using PHP

Viewed 63462

I have been looking and testing this for a couple days now and was wondering if anyone could point me in a different direction. I have a very long job application HTML form (jobapp.html) and a matching PDF (jobpdf.pdf) that have the same field names for all entries in both the HTML form and the PDF. I need to take the user data that is entered in the form and convert it to a PDF. This is what I have gathered so far but don't know if I am on track:

Is pdftk the only viable 3rd party app to accomplish this?

Using pdftk would i take the $_POST data collected for the user and generate a .fdf(user.fdf) then flatten the .fdf on the .pdf(job.pdf). So irreguarless of where the fields are located on each document the information on the fdf would populate the pdf by field names?

I have been trying http://koivi.com/fill-pdf-form-fields/tutorial.php

I have also looked at "Submit HTML form to PDF"

4 Answers

One way you can consider is using an online API that converts any HTML to PDF. You can send them a generated HTML (easier to produce) that will contains your user's submitted data, and receive back a high fidelity PDF.

There are quite a few services available on the market. I like to mention PDFShift because it offers a package in PHP that simplifies the work for you.

Once you've installed it (using Composer, or downloaded it directly, depending on your choices) you can quickly convert an HTML document like this:

require_once('vendor/autoload.php');
use \PDFShift\PDFShift;

PDFShift::setApiKey('{your api key}');
PDFShift::convertTo('https://link/to/your/html', null, 'invoice.pdf');

And that's it. There are quite a few features you can implement (accessing secured documents, adding a watermark, and more).

Hope that helps!

Related