Excel Export Using Codeigniter
Excel Export using codeigniter:-
Controller:-
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Excel_export extends CI_Controller {
public function excel_export_view()
{
$this->load->model("excel_export_model");
$data["employee_data"] = $this->excel_export_model->fetch_data();
$this->load->view('templates/header', $data);
$this->load->view('templates/nav', $data);
$this->load->view("Excel_export/excel_export_view", $data);
//$this->load->view('templates/footer');
}
public function action()
{
$this->load->model("excel_export_model");
$this->load->library("excel");
$object = new PHPExcel();
$object->setActiveSheetIndex(0);
$table_columns = array("Name", "Address", "Gender", "Designation", "Age");
$column = 0;
foreach($table_columns as $field)
{
$object->getActiveSheet()->setCellValueByColumnAndRow($column, 1, $field);
$column++;
}
$employee_data = $this->excel_export_model->fetch_data();
$excel_row = 2;
foreach($employee_data as $row)
{
$object->getActiveSheet()->setCellValueByColumnAndRow(0, $excel_row, $row->name);
$object->getActiveSheet()->setCellValueByColumnAndRow(1, $excel_row, $row->address);
$object->getActiveSheet()->setCellValueByColumnAndRow(2, $excel_row, $row->gender);
$object->getActiveSheet()->setCellValueByColumnAndRow(3, $excel_row, $row->designation);
$object->getActiveSheet()->setCellValueByColumnAndRow(4, $excel_row, $row->age);
$excel_row++;
}
$object_writer = PHPExcel_IOFactory::createWriter($object, 'Excel5');
header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment;filename="Employee Data.xls"');
$object_writer->save('php://output');
}
}
Model:-
<?php
class Excel_export_model extends CI_Model
{
function fetch_data()
{
$this->db->order_by("id", "DESC");
$query = $this->db->get("employee");
return $query->result();
}
}
View:-
<section class="content-header">
<h1>
Excel Import
<small>Control panel</small>
</h1>
<ol class="breadcrumb">
<li><a href="#"><i class="fa fa-dashboard"></i> Dashboard</a></li>
<li class="active">Excel Import</li>
</ol>
</section>
<div class="container">
<h3 align="center">Export Data to Excel in Codeigniter using PHPExcel</h3>
<br />
<div class="row">
<div class="col-xs-11">
<div class="box">
<div class="panel panel-primary">
<div class="panel-heading">Products Details
</div>
<div class="box-body">
<div class="grid-view table-responsive" id="item-grid">
<table id="example1" class="table table-bordered table-striped" id="item-grid">
<thead>
<tr>
<th>Name</th>
<th>Address</th>
<th>Gender</th>
<th>Designation</th>
<th>Age</th>
</tr>
</thead>
<tbody id="userData">
<?php
foreach($employee_data as $row)
{
echo '
<tr>
<td>'.$row->name.'</td>
<td>'.$row->address.'</td>
<td>'.$row->gender.'</td>
<td>'.$row->designation.'</td>
<td>'.$row->age.'</td>
</tr>
';
}
?>
</tbody>
</table>
<div align="center">
<form method="post" action="<?php echo base_url(); ?>Excel_export/action">
<input type="submit" name="export" class="btn btn-success" value="Export"/>
</form>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
Libraries:-
Excel.php
<?php
if (!defined('BASEPATH')) exit('No direct script access allowed');
require_once('PHPExcel.php');
class Excel extends PHPExcel
{
public function __construct()
{
parent::__construct();
}
}
?>
IOFactory:-
<?php
if (!defined('BASEPATH')) exit('No direct script access allowed');
require_once('PHPExcel/IOFactory.php');
class IOFactory extends PHPExcel_IOFactory
{
public function __construct()
{
parent::__construct();
}
}
?>
Controller:-
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Excel_export extends CI_Controller {
public function excel_export_view()
{
$this->load->model("excel_export_model");
$data["employee_data"] = $this->excel_export_model->fetch_data();
$this->load->view('templates/header', $data);
$this->load->view('templates/nav', $data);
$this->load->view("Excel_export/excel_export_view", $data);
//$this->load->view('templates/footer');
}
public function action()
{
$this->load->model("excel_export_model");
$this->load->library("excel");
$object = new PHPExcel();
$object->setActiveSheetIndex(0);
$table_columns = array("Name", "Address", "Gender", "Designation", "Age");
$column = 0;
foreach($table_columns as $field)
{
$object->getActiveSheet()->setCellValueByColumnAndRow($column, 1, $field);
$column++;
}
$employee_data = $this->excel_export_model->fetch_data();
$excel_row = 2;
foreach($employee_data as $row)
{
$object->getActiveSheet()->setCellValueByColumnAndRow(0, $excel_row, $row->name);
$object->getActiveSheet()->setCellValueByColumnAndRow(1, $excel_row, $row->address);
$object->getActiveSheet()->setCellValueByColumnAndRow(2, $excel_row, $row->gender);
$object->getActiveSheet()->setCellValueByColumnAndRow(3, $excel_row, $row->designation);
$object->getActiveSheet()->setCellValueByColumnAndRow(4, $excel_row, $row->age);
$excel_row++;
}
$object_writer = PHPExcel_IOFactory::createWriter($object, 'Excel5');
header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment;filename="Employee Data.xls"');
$object_writer->save('php://output');
}
}
Model:-
<?php
class Excel_export_model extends CI_Model
{
function fetch_data()
{
$this->db->order_by("id", "DESC");
$query = $this->db->get("employee");
return $query->result();
}
}
View:-
<section class="content-header">
<h1>
Excel Import
<small>Control panel</small>
</h1>
<ol class="breadcrumb">
<li><a href="#"><i class="fa fa-dashboard"></i> Dashboard</a></li>
<li class="active">Excel Import</li>
</ol>
</section>
<div class="container">
<h3 align="center">Export Data to Excel in Codeigniter using PHPExcel</h3>
<br />
<div class="row">
<div class="col-xs-11">
<div class="box">
<div class="panel panel-primary">
<div class="panel-heading">Products Details
</div>
<div class="box-body">
<div class="grid-view table-responsive" id="item-grid">
<table id="example1" class="table table-bordered table-striped" id="item-grid">
<thead>
<tr>
<th>Name</th>
<th>Address</th>
<th>Gender</th>
<th>Designation</th>
<th>Age</th>
</tr>
</thead>
<tbody id="userData">
<?php
foreach($employee_data as $row)
{
echo '
<tr>
<td>'.$row->name.'</td>
<td>'.$row->address.'</td>
<td>'.$row->gender.'</td>
<td>'.$row->designation.'</td>
<td>'.$row->age.'</td>
</tr>
';
}
?>
</tbody>
</table>
<div align="center">
<form method="post" action="<?php echo base_url(); ?>Excel_export/action">
<input type="submit" name="export" class="btn btn-success" value="Export"/>
</form>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
Libraries:-
Excel.php
<?php
if (!defined('BASEPATH')) exit('No direct script access allowed');
require_once('PHPExcel.php');
class Excel extends PHPExcel
{
public function __construct()
{
parent::__construct();
}
}
?>
IOFactory:-
<?php
if (!defined('BASEPATH')) exit('No direct script access allowed');
require_once('PHPExcel/IOFactory.php');
class IOFactory extends PHPExcel_IOFactory
{
public function __construct()
{
parent::__construct();
}
}
?>
Comments
Post a Comment