Jump to content
Flavio Nash

Erro ao gerar Relatório com PHPExcel

Recommended Posts

Flavio Nash

Olá pessoal tenho um projeto em cakephp3 e to tentando gerar uma relatório com a lib PHPExcel, mas está dando o seguinte erro:

A página da web em http://localhost:8765/admin/usuarios/export pode estar temporariamente indisponível ou pode ter sido movida permanentemente para um novo endereço da web.
ERR_INVALID_RESPONSE

Não sei porque esse erro está acontecendo, ele não registra nada no log no apache, uso o ubuntu 16.04, e segue o codigo de geração do excel:

require_once(ROOT . DS. 'vendor' . DS  . 'phpexcel' . DS . 'Classes' . DS . 'PHPExcel.php');
use PHPExcel;

// Instanciamos a classe
$objPHPExcel = new PHPExcel();

// Definimos o estilo da fonte
$objPHPExcel->getActiveSheet()->getStyle('A1')->getFont()->setBold(true);

// Criamos as colunas
$objPHPExcel->setActiveSheetIndex(0)
            ->setCellValue('A1', 'L=listagem de credenciamento' )
            ->setCellValue('B1', "nome " )
            ->setCellValue("C1", "sobrenome" )
            ->setCellValue("D1", "e-mail" );

// Podemos configurar diferentes larguras paras as colunas como padrão
$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(90);
$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(15);
$objPHPExcel->getActiveSheet()->getColumnDimension('C')->setWidth(30);
$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setWidth(30);

// Também podemos escolher a posição exata aonde o dado será inserido (coluna, linha, dado);
$objPHPExcel->getActiveSheet()->setCellValueByColumnAndRow(1, 2, "fulano");
$objPHPExcel->getActiveSheet()->setCellValueByColumnAndRow(2, 2, " da Silva");
$objPHPExcel->getActiveSheet()->setCellValueByColumnAndRow(3, 2, "fulano@exemplo.com.br");

// Exemplo inserindo uma segunda linha, note a diferença no segundo parâmetro
$objPHPExcel->getActiveSheet()->setCellValueByColumnAndRow(1, 3, "beltrano");
$objPHPExcel->getActiveSheet()->setCellValueByColumnAndRow(2, 3, " da silva sauro");
$objPHPExcel->getActiveSheet()->setCellValueByColumnAndRow(3, 3, "beltrando@exemplo.com.br");

// Podemos renomear o nome das planilha atual, lembrando que um único arquivo pode ter várias planilhas
$objPHPExcel->getActiveSheet()->setTitle('credenciamento para o evento');

// Cabeçalho do arquivo para ele baixar
header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment;filename="arquivo.xls"');
header('Cache-Control: max-age=0');
// Se for o IE9, isso talvez seja necessário
header('Cache-Control: max-age=1');

// Acessamos o 'Writer' para poder salvar o arquivo
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
// Salva diretamente no output, poderíamos mudar arqui para um nome de arquivo em um diretório ,caso não quisessemos jogar na tela
$objWriter->save('php://output'); 

exit;

Agradeço a ajuda de todos;

Share this post


Link to post
Share on other sites
Flavio Nash

O endereço responde sim. a resposta que estou tendo ao tentar gerar o excel é o seguinte.

A página da web em http://localhost:8765/admin/usuarios/export pode estar temporariamente indisponível ou pode ter sido movida permanentemente para um novo endereço da web.
ERR_INVALID_RESPONSE

debugando aqui o erro dá na seguinte linha do meu método:

$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');

att,

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.