PHP + CodeIgniter - Não Gera Relatório no Google Chrome
Caros amantes da informática.
Saudações
Amigos, primeiramente peço desculpa por recorrer ao auxílio dos amigos. Estou estudando CodeIgniter e já me deparei com um problema que não entendo.
Quando gero relatório no Chrome aparece um erro: FALHA AO TENTAR CARREGAR O DOCUMENTO.
Obs.: no Mozila não dá esse erro e o Relatório é gerado.
Instalei no mPdf na seguinte pasta: application/helpers/mpdf <-não sei se o caminho seria o correto.
Caso alguém possa me indicar algum vídeo ou tutorial para entender melhor, ficarei muito grato.
Os Código estão assim:
mpdf_helper.php
<?php
if (!defined('BASEPATH')) { exit('No direct script access allowed'); }
function pdf_create($html, $filename, $stream = TRUE, $landscape = FALSE) {
require_once(APPPATH) . 'helpers/mpdf/mpdf.php';
if($landscape){
$mpdf = new mPDF('c', 'A4-L');
}else{
$mpdf = new mPDF('c', 'A4');
}
$mpdf->WriteHTML($html);
if ($stream) {
$mpdf->Output($filename . '.pdf', 'I');
} else {
$mpdf->Output('./uploads/temp/' . $filename . '.pdf', 'F');
return './uploads/temp/' . $filename . '.pdf';
}
}
?>
no controller está assim:
<?php if (!defined('BASEPATH')) { exit('No direct script access allowed'); }
class Relatorios extends CI_Controller{
public function __construct(){
parent::__construct();
if ((!session_id()) || (!$this->session->userdata('logado'))) {
redirect('siscota/login');
}
$this->load->model('Relatorios_model', '', true);
$this->load->model('Usuarios_model', '', true);
$this->load->model('Mapos_model', '', true);
$this->data['menuRelatorios'] = 'Relatórios';
}
public function index()
{
header('Location: ./');
}
public function clientes()
{
if (!$this->permission->checkPermission($this->session->userdata('permissao'), 'rCliente')) {
$this->session->set_flashdata('error', 'Você não tem permissão para gerar relatórios de clientes.');
redirect(base_url());
}
$this->data['view'] = 'relatorios/rel_clientes';
$this->load->view('layout/topo', $this->data);
}
public function clientesCustom()
{
if (!$this->permission->checkPermission($this->session->userdata('permissao'), 'rCliente')) {
$this->session->set_flashdata('error', 'Você não tem permissão para gerar relatórios de clientes.');
redirect(base_url());
}
$dataInicial = $this->input->get('dataInicial');
$dataFinal = $this->input->get('dataFinal');
$data['clientes'] = $this->Relatorios_model->clientesCustom($dataInicial, $dataFinal);
$this->load->helper('mpdf');
$html = $this->load->view('relatorios/imprimir/imprimirClientes', $data, true);
pdf_create($html, 'relatorio_clientes' . date('d/m/y'), true);
}
public function clientesRapid()
{
if (!$this->permission->checkPermission($this->session->userdata('permissao'), 'rCliente')) {
$this->session->set_flashdata('error', 'Você não tem permissão para gerar relatórios de clientes.');
redirect(base_url());
}
$data['clientes'] = $this->Relatorios_model->clientesRapid();
$this->load->helper('mpdf');
$html = $this->load->view('relatorios/imprimir/imprimirClientes', $data, true);
pdf_create($html, 'relatorio_clientes' . date('d/m/y'), TRUE);
}
}
no model está assim:
<?php
class Relatorios_model extends CI_Model {
function __construct() {
parent::__construct();
}
function get($table,$fields,$where='',$perpage=0,$start=0,$one=false,$array='array'){
$this->db->select($fields);
$this->db->from($table);
$this->db->limit($perpage,$start);
if($where){
$this->db->where($where);
}
$query = $this->db->get();
$result = !$one ? $query->result() : $query->row();
return $result;
}
function add($table,$data){
$this->db->insert($table, $data);
if ($this->db->affected_rows() == '1')
{
return TRUE;
}
return FALSE;
}
function edit($table,$data,$fieldID,$ID){
$this->db->where($fieldID,$ID);
$this->db->update($table, $data);
if ($this->db->affected_rows() >= 0)
{
return TRUE;
}
return FALSE;
}
function delete($table,$fieldID,$ID){
$this->db->where($fieldID,$ID);
$this->db->delete($table);
if ($this->db->affected_rows() == '1')
{
return TRUE;
}
return FALSE;
}
function count($table) {
return $this->db->count_all($table);
}
//Imprimir com mais detalhes
public function clientesCustom($dataInicial = null,$dataFinal = null){
if($dataInicial == null || $dataFinal == null){
$dataInicial = date('Y-m-d');
$dataFinal = date('Y-m-d');
}
$query = "SELECT * FROM clientes WHERE dataCadastro BETWEEN ? AND ?";
return $this->db->query($query, array($dataInicial,$dataFinal))->result();
}
//Impressão modo rápido
public function clientesRapid(){
$this->db->order_by('nomeCliente','asc');
return $this->db->get('clientes')->result();
}
}
Como faço para corrigir este erro ?
Grato a todos,
RenatoDiscussão (2)
Carregando comentários...