• logo
  • PHP
  • PHP OOPs
  • script
    • JavaScript
    • JQuery
    • Ajax
    • AngularJs
    • VueJs
    • NodeJs
    • ReactJs
  • wordpress
  • Codeigniter
  • Codeigniter 4
  • Laravel
  • Python
  • MySql
  • Json
  • C
  • C++
  • More ...
    • Cakephp Framework
    • MongoDb
    • MySqli PDO
    • .htaccess
    • HTML 5
    • CSS
    • SEO
    • DCA

Codeigniter Tutorials

  • What is codeigniter?
  • Application_Architecture
  • MVC Architecture
  • HMVC Architecture
  • Codeigniter Configuration
  • Remove index.php from url in codeigniter
  • MVC Concept
  • View
  • Alternate PHP Syntax for View Files
  • Routing
  • Codeigniter URL
  • Get Current URL
  • Previous page URL get
  • Seo Friendly URL
  • Slug Create in codeigniter
  • What is _remap() function
  • Remove controller name from url in codeigniter
  • Codeigniter Controller Class
  • Class Constructor
  • GET $ POST method in Codeigniter
  • Models
  • Basepath, Apppath, FCPATH
  • URI Segment
  • Page Redirect
  • Helper class
  • Custom Helper class
  • Form Helper
  • Common Helper Functions
  • Common Function
  • Array Problems
  • Call controller in Helper
  • Add active class to menu using Helper class
  • Custom Library
  • Custom Library Example
  • when to use get_instance()
  • Codeigniter Hook
  • how to work inline css in codeigniter
  • Custom 404 page
  • 404 custom error page
  • Create custom config file in codeigniter
  • How to set and get config item value
  • How to Speed Up CodeIgniter App?
  • Codeigniter Functions
  • Session
  • cookies
  • How to Set & Get Tempdata in Codeigniter
  • flash messages in Codeigniter
  • Flashdata
  • Encryption and Decryption In CodeIgniter
  • Codeigniter security
  • csrf token form security
  • Password Hashing
  • Form Validation
  • Custom Validation
  • Registration Form with validation
  • Server Side Form Validation
  • Validate Select Option Field
  • Date Format Validation
  • Date Format change in codeigniter
  • Date Functions
  • DOB Validation
  • CI CRUD
  • User SignUp
  • User Login
  • User Logout
  • Login Account
  • Login form with RememberMe
  • Login Form with session
  • User change password
  • Change Password with Callback Validation to Check Old Password
  • Forgot password
  • Reset password
  • Insert data in database
  • Fetch data from database
  • Update data in database
  • Delete data in database
  • File Upload
  • Image Upload with resize Image
  • Upload Multiple file and images
  • Upload Multiple images with CRUD
  • File and image update
  • Upload Image Using Ajax.
  • Email Send
  • Email Send Using Email library
  • Email Send Using SMTP Gmail
  • Notification send
  • store data in json format in DB
  • Json parse
  • Fetch data Using Ajax with Json data
  • How to Show data Using Ajax with Json parse
  • Get JSON Data from PHP Script using jQuery Ajax
  • Insert data Using Ajax
  • Submit data Using Ajax with form validation
  • How to show data Using Ajax in codeigniter
  • Insert & Update Using Ajax
  • Registration Form With Validation Using Ajax in codeigniter
  • Delete data Using Ajax Confirmation
  • Delete All data Using checkbox selection
  • Ajax CSRF Token
  • Ajax Post
  • Ajax serverside form validation
  • Contact form using AJAX with form validation
  • DataTable Using Ajax dynamically
  • DataTables pagination using AJAX with Custom filter
  • DataTables AJAX Pagination with Search and Sort in codeigniter
  • DataTables in Codeigniter using Ajax
  • Ajax Custom Serarch
  • Ajax Live Data Search using Jquery PHP MySql
  • Ajax Custom Serarch and sorting in datatable
  • Dynamic Search Using Ajax
  • Autocomplete using jquery ajax
  • Jquery Ajax Autocomplete Search using Typeahead
  • Dynamic Dependent Dropdown Using Ajax
  • Dynamic Dependent Dropdown list Using Ajax
  • Dynamic Dependent Dropdown in codeigniter using Ajax
  • ajax username/email availability check using JQuery
  • Check Email Availability Using Ajax
  • Data Load on mouse scroll
  • Ajax CI Pagination
  • Pagination in codeigniter
  • Ajax Codeigniter Pagination
  • email exists or not using ajax with json
  • CRUD using AJAX With Modal popup in CI
  • Add / Show Data on modal popup using Ajax
  • Modal popup Validation using Ajax
  • Data show on Modal popup Using Ajax
  • Add / Remove text field dynamically using jquery ajax
  • How to Add/Delete Multiple HTML Rows using JavaScript
  • Delete Multiple Rows using Checkbox
  • Multiple Checkbox value
  • Form submit using jquery Example
  • REST & SOAP API
  • Multi-Language implementation in CodeIgniter
  • How to pass multiple array in view
  • Captcha
  • create zip file and download
  • PhpOffice PhpSpreadsheet Library (Export data in excel sheet)
  • data export in excel sheet
  • Excel File generate in Codeigniter using PHPExcel
  • Dompdf library
  • tcpdf library
  • Html table to Excel & docs download
  • CI Database Query
  • Database Query
  • SQL Injection Prevention
  • Auth Model
  • Join Mysql
  • Tree View in dropdown option list
  • OTP Integration in codeigniter
  • curl post
  • download file using curl
  • Sweet Alert
  • Sweet alert Delete & Success
  • Log Message in Codeigniter
  • Menu & Submenu show dynamically
  • Set Default value in input box
  • Cron Jobs
  • Stored Procedure
  • Display Loading Image when AJAX call is in Progress
  • Send SMS
  • IP Address
  • Codeigniter Tutorialspoint
  • Website Link
  • How To Create Dynamic Xml Sitemap In Codeigniter
  • Paypal Payment Integration
  • Get Latitude and Longitude From Address in Codeigniter Using google map API
  • How To Create Simple Bar Chart In Codeigniter Using AmCharts?
  • dynamic Highcharts in Codeigniter
  • Barcode in Codeigniter
  • Codeigniter Interview Questions
  • Project
Home » Codeigniter » 

How to convert Html to PDF using DOMPDF library?


You can easily convert to HTML to PDF conversion done by PHP library. Dompdf is a PHP library that helps to generate PDF file from HTML content.

Download Dompdf library

Download

unzip this library under this path : application/libraries/

Pdf library

File Name : application/libraries/Pdf.php

<?php
if (!defined('BASEPATH')) exit('No direct script access allowed');

require_once 'dompdf/autoload.inc.php';

use Dompdf\Dompdf;

class Pdf extends Dompdf
{
public function __construct()
{
parent::__construct();
}
}

?>

Controller

File Name : Member.php

<?php
defined('BASEPATH') OR exit('no direct script access allowed');
class Members extends CI_Controller
{
public function __construct()
{
parent::__construct();
$this->load->model('Admin_basic_model');
$this->load->library('pdf');
}

public function all_member()
{
$data = array();
$title['title'] = "All Member List";
$result_member = $this->Admin_basic_model->get_all_members();
$data['memberlist'] = $result_member;

$this->load->view('admin/basic/header',$title);
$this->load->view('admin/basic/allmemberlist',$data);
$this->load->view('admin/basic/footer');
}


public function pdfdetails($user_id)
{

//if($this->uri->segment(3))
//{
//$user_id = $this->uri->segment(3);

$html_content = '<h3 align="center">Convert HTML to PDF in CodeIgniter using Dompdf</h3>';
$html_content .= $this->Admin_basic_model->fetch_single_details($user_id);
$this->pdf->loadHtml($html_content);
$this->pdf->setPaper('A4', 'landscape');
$this->pdf->render();
$this->pdf->stream("".$user_id.".pdf", array("Attachment"=>0));

//}
}

public function pdfconvert()
{
$html_content = '<h3 align="center">Convert HTML to PDF in CodeIgniter using Dompdf</h3>';
$html_content .= $this->Admin_basic_model->fetch_alluser_details();
$this->pdf->loadHtml($html_content);
$this->pdf->render();
$this->pdf->stream("userdetail".".pdf", array("Attachment"=>0));
}






}

view

File Name : allmemberlist.php

<div class="row">
<div class="col-12">
<div class="card-box table-responsive">
<h4 class="m-t-0 header-title"> </h4>

<a href="<?php echo base_url()?>admin/basic/members/pdfconvert">Download PDF</a>

<table id="datatable" class="table table-bordered">
<thead>
<tr>
<th>U-Id</th>
<th>Name</th>
<th>Sp-Id</th>
<th>Sp-Name</th>
<th>position</th>
<th>Member</th>
<th>Mobile</th>
<th>R-date</th>
<th>Status</th>
<th>Action</th>
</tr>
</thead>


<tbody>
<?php
if(!empty($memberlist))
{
foreach ($memberlist as $row){
?>
<tr>
<td><a href="<?php echo base_url()?>admin/basic/members/show_down_members/<?php echo $row->user_id;?>"><?php echo $row->user_id;?></a></td>
<td><?php echo $row->name;?></td>
<td><?php echo $row->sponser_code;?></td>
<td><?php echo $row->sponser_name;?></td>
<td><?php echo $row->user_position;?></td>
<td><?php echo $row->user_child;?></td>
<td><?php echo $row->mobile;?></td>
<td><?php echo $row->registration_date;?></td>
<td>

<?php if($row->status==1){?>

<button class="btn btn-icon waves-effect waves-light btn-success m-b-5"> <span>Yes</span> </button>

<?php } else { ?>

<button class="btn btn-icon waves-effect waves-light btn-danger m-b-5"> <i class="fa fa-remove"></i> </button>

<?php } ?>





</td>

<td>

<div class="btn-group">
<button type="button" class="btn btn-secondary dropdown-toggle waves-effect waves-light" data-toggle="dropdown" aria-expanded="false">Action <span class="caret"></span></button>
<div class="dropdown-menu">

<a class="dropdown-item" href="<?php echo base_url()?>admin/profile/profile_details/<?php echo $row->user_id;?>">Edit</a>
<a class="dropdown-item viewbtn" href="javascript:void();" id="<?php echo $row->user_id; ?>" >View</a>
<a class="dropdown-item" href="<?php echo base_url()?>admin/basic/members/pdfdetails/<?php echo $row->user_id?>">View PDF</a>
</div>
</div>

</td>

</tr>
<?php } }else{ ?>

<tr>
<td>----- Recored Not Found -----</td>

</tr>

<?php }?>

</tbody>
</table>
</div>
</div>
</div> <!-- end row -->


model

File Name : Admin_basic_model.php

function fetch_single_details($user_id)
{
$this->db->where('user_id', $user_id);
$data = $this->db->get('user_register');
$output = '<table width="100%" cellspacing="5" cellpadding="5">';
foreach($data->result() as $row)
{
$output .= '
<tr>
<td width="25%"><img src="'.base_url().'images/'.$row->profile_photo.'" /></td>
<td width="75%">
<p><b>Name : </b>'.$row->user_id.'</p>
<p><b>Address : </b>'.$row->name.'</p>
<p><b>City : </b>'.$row->user_position.'</p>
<p><b>Postal Code : </b>'.$row->sponser_code.'</p>
<p><b>Country : </b> '.$row->mobile.' </p>
</td>
</tr>
';
}
$output .= '
<tr>
<td colspan="2" align="center"><a href="'.base_url().'admin/basic/members/all_member" class="btn btn-primary">Back</a></td>
</tr>
';
$output .= '</table>';
return $output;
}


public function fetch_alluser_details()
{
$this->db->select('*');
$this->db->from('user_register');
$this->db->where('status', '1');
$data = $this->db->get();
$output = '<table width="100%" cellspacing="5" cellpadding="5">';
foreach($data->result() as $row)
{
$output .= '
<tr>
<td>'.$row->user_id.' </td>
<td> '.$row->name.'</td>
<td> '.$row->user_position.'</td>
<td> '.$row->sponser_code.'</td>
<td> '.$row->mobile.'</td>

</tr>
';
}
$output .= '
<tr>
<td colspan="2" align="center"><a href="'.base_url().'admin/basic/members/all_member" class="btn btn-primary">Back</a></td>
</tr>
';
$output .= '</table>';
return $output;
}

Useful Methods Of Dompdf

File Name :

The following are some useful methods of Dompdf library to implement HTML to PDF conversion functionality.

loadHtml(): Loads HTML content.
$str (string) – Required. Specify the HTML to load.
$encoding (string) – Optional. Specify encoding.
loadHtmlFile(): Loads content from an HTML file.
$file (string) – Required. Specify file path to load.
output(): Returns the PDF as a string.
$options (array) – Optional. Specify whether content stream compression will enable. (compress => 1 or 0)
render(): Renders the HTML to PDF.
setBasePath(): Sets the base path to include external stylesheets and images.
$basePath (string) – The base path to be used when loading the external resources URLs.
setPaper(): Sets the paper size & orientation.
$size (string|array) – ‘letter’, ‘legal’, ‘A4’, etc.
$orientation (string) – ‘portrait’ or ‘landscape’.
stream(): Streams the PDF to the client.
$filename (string) – Specify name of the file (without .pdf extension).
$options (array) –
‘compress’ => 1 or 0 – enable content stream compression.
‘Attachment’ => 1 = download or 0 = preview

Example :-

File Name : Welcome.php

<?php defined('BASEPATH') OR exit('No direct script access allowed');

class Welcome extends CI_Controller {

public function index(){
$this->load->view('welcome_message');

// Get output html
$html = $this->output->get_output();

// Load pdf library
$this->load->library('pdf');

// Load HTML content
$this->dompdf->loadHtml($html);

// (Optional) Setup the paper size and orientation
$this->dompdf->setPaper('A4', 'landscape');

// Render the HTML as PDF
$this->dompdf->render();

// Output the generated PDF (1 = download and 0 = preview)
$this->dompdf->stream("welcome.pdf", array("Attachment"=>0));
}

}

File Name :

<?php defined('BASEPATH') OR exit('No direct script access allowed');
use Dompdf\Dompdf;
class Pdf
{
public function __construct(){

// include autoloader
require_once dirname(__FILE__).'/dompdf/autoload.inc.php';

// instantiate and use the dompdf class
$pdf = new DOMPDF();

$CI =& get_instance();
$CI->dompdf = $pdf;

}
}
?>




Itechtuto

Connect Us Socially:

Quick Links

  • itech
  • About Us
  • Feedback
  • Trademarks
  • Privacy Policy
  • Terms of Use
  • Sitemap
  • Trademarks
  • Privacy Policy
  • Terms of Use
  • Sitemap

Copyright © 2016 itechxpert (P) Ltd. All rights reserved.

Copyright © 2016 itechxpert (P) Ltd. All rights reserved.