Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Victor Nunes

Relatório em Excel ( PHP + MySQL + AJAX )

Recommended Posts

pessoal, to precisando de uma ajuda com um relatório em excel...

a situação é a seguinte:

 

os parametros são passados pela URL mesmo, testei utilizando link direto e funcionou beleza, mas quando eu faço via GET com ajax, ele não cria o arquivo XLS, simplesmente pega o conteúdo da página e passa pro responseText

 

=/

 

a parte do ajax tá assim:

 

ajax.open( "GET", "AjaxReportToolBeneficiarios.art.php?semestre=1&ano=2008", true );
ajax.onreadystatechange = function()
{
  if( ajax.readyState == 4 )
  {
   document.getElementById( "responseLabel" ).innerHTML = "arquivo gerado com sucesso";
  }
}
ajax.send( null );

e a parte do php tá assim:

 

<?php
$semestre = $_GET['semestre'];
$ano = $_GET['ano'];
$periodo = $semestre . 'o semestre de ' . $ano;

// parte de implementação do código

header( "Content-type: application/vnd.ms-excel" );
header( "Content-Disposition: attachment; filename=relatorio_beneficiarios_$semestre\semestre_$ano.xls" );
header( "Pragma: no-cache" );
header( "Expires: 0" );
?>
<table border="1">
<tr>
  <td>Nome</td>
  <td>Sexo</td>
  <td>Data de Nascimento</td>
  <td>CPF</td>
  <td>RG</td>
  <td>Estado Civil</td>
  <td>Publico</td>
  <td>Escola</td>
  <td>Escolaridade</td>
  <td>Telefone</td>
  <td>Endereco</td>
  <td>E-mail</td>
  <td>Cadastrado Por</td>
  <td>Data do Cadastro</td>
</tr>
<?php
for( $i = 0; $i < sizeof( $listaBeneficiarios ); $i++ )
{
  $aluno = $listaBeneficiarios[$i];
  ?>
  <tr>
	<td><?php print $aluno->getNome(); ?></td>
	<td><?php print $aluno->getSexo(); ?></td>
	<td><?php print $aluno->getDataNascimento()->getMaskedDate( "dd/mm/aaaa" ); ?></td>
	<td><?php print $aluno->getCpf()->getMaskedCpf(); ?></td>
	<td><?php print $aluno->getRg(); ?></td>
	<td><?php print $aluno->getEstadoCivil(); ?></td>
	<td><?php print $aluno->getPublico(); ?></td>
	<td><?php print ( $aluno->getIdEscola() == null ) ? "-" : $aluno->getEscola()->getNome(); ?></td>
	<td><?php print $aluno->getEscolaridade(); ?></td>
	<td><?php print $aluno->getFone()->getMaskedFone(); ?></td>
	<td><?php print $aluno->getEndereco(); ?></td>
	<td><?php print ( $aluno->getEmail() == null ) ? "-" : $aluno->getEmail(); ?></td>
	<td><?php print $aluno->getUsuario()->getNome(); ?></td>
	<td><?php print $aluno->getDataCadastro()->getMaskedDate( "dd/mm/aaaa" ); ?></td>
  </tr>
<?php
}
?>
</table>

mesmo mudando o mime-type da página com header() não tá gerando o arquivo.

alguem pode me dar uma luz?

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.