Ir para conteúdo
Fórum Script Brasil
  • 0

Gerar arquivo da consulta no execel


marcosfj1

Pergunta

Bom galera seguinte, eu já consegui fazer isso, mas quero aperfeiçoar, e preciso da ajuda de vocês.

Primeira coisa q quero melhor:

Atualmente tem la a pagina(clientes_bloqueados.php) de dados do meu banco, e la no final dela eu coloquei:

<tr align="right" >
      <td colspan="3" > <a href=caminho/excel_clientes_bloqueados.php'>Gerar Arquivo Excel</a></td>
</tr>
Bom quando o cara clica no link, beleza gera o arquivo....mas não queria q estivesse em um link queria q fosse num botao(tipo submit), por uma questao de aparencia...como eu poderia fazer isso? ========================================================================================= Segunda mudança: Esta acho q vai dar trabalho, é na pagina excel_clientes_bloqueados.php Bom vou postar todo o codigo dela para vocês verem:
<table>
<tr>
      <td>
          <?php 
             $arquivo = 'clientes_bloqueados.xls';  
             $html = '';  
             $html .= '<table broder = "1">'; 
             $html .= '<tr>';  
             $html .= '<td colspan="4"></tr>';  
             $html .= '</tr>';  
             $html .= '<tr>';  
             $html .= '<td colspan="4">Pontos Clientes</tr>';  
             $html .= '</tr>';
             $html .= '<tr>';  
             $html .= '<td colspan="4"></tr>';  
             $html .= '</tr>';                
             $html .= '<tr>';  
             $html .= '<td><b>Nome</b></td>';  
             $html .= '<td><b>Email</b></td>';  
             $html .= '<td><b>Dt_Pedido</b></td>';
             $html .= '<td><b>Meses</b></td>'; 
             $html .= '<td><b>Dt_Reativacao</b></td>'; 
             $html .= '<td><b>Controle</b></td>';
             $html .= '<td><b>Tipo 1-Logista / 2-Profissional</b></td>';    
             $html .= '</tr>';  
             
             
            $sql="SELECT *, DATE_FORMAT(dt_reativacao, '%d/%m/%y') AS dt_reativacao, DATE_FORMAT(dt_pedido, '%d/%m/%y') AS dt_pedido
            FROM clientes_bloqueados 
            WHERE id_cliente IS NOT NULL
            AND st_ativo = 0
            AND meses >= 4";
    
    //
    $req = mysql_query($sql) or die(mysql_error());
             
            while ($cp = mysql_fetch_array($req)) {
    

               $html .= '<tr>';
            $html .=  '<td align="left">'.$cp["nome"].'</td>';
               $html .=  '<td align="left">'.$cp["email"].' </td>';
            $html .=  '<td align="left">'.$cp["dt_pedido"].'</td>';
            $html .=  '<td align="left">'.$cp["meses"].'</td>';
            $html .=  '<td align="left">'.$cp["dt_reativacao"].' </td>';
            $html .=  '<td align="left">'.$cp["controle"].' </td>';
            $html .=  '<td align="left">'.$cp["tipo_cliente"].' </td>';
              $html .=  '</tr>';
   
            } 
             $html .= '</table>';  

            header ("Expires: Mon, 26 Jul 1997 05:00:00 GMT");  
            header ("Last-Modified: " . gmdate("D,d M YH:i:s") . " GMT");  
            header ("Cache-Control: no-cache, must-revalidate");  
            header ("Pragma: no-cache");  
            header ("Content-type: application/x-msexcel");  
            header ("Content-Disposition: attachment; filename=\"{$arquivo}\"" );  
            header ("Content-Description: PHP Generated Data" );  

            echo $html;  
            exit;  
            ?>


          
    </td>
    </tr>
</table>

Bom a pagina funciona perfeitamente, mas o q é ruim é q nela eu estou pegando os dados de uma tabela, assim como na pagina anterior q chama ela, mas lá em clientes_bloqueados.php eu posso fazer uma busca para restringir o numero de resultados...

então o q eu queria q quando cara fizesse a busca e clicasse em gerar excel gerasse aquilo q foi mostrado, ou seja a consulta sql mas limitada a busca, e não geral como eu fiz

alguém saberia m ajudar?

Valeu

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

Bom... para trocar o link pelo botão é só criar o campo input do tipo button que redirecione para a página que você quer:

<input type='button' value='Gerar Arquivo excel' onclick="window.location='caminho/excel_clientes_bloqueados.php';"/>

Quanto à página excel_clientes_bloqueados.php, existem várias maneiras de fazer o que você quer... uma seria quando a pessoa realizasse a consulta com os filtros na outra página, você guardasse o comando SQL que foi executado em uma session e na página excel_clientes_bloqueados.php você re-executasse este comando. Outra alternativa é você passar os parâmetros do filtro da busca para a página excel_clientes_bloqueados.php...

Link para o comentário
Compartilhar em outros sites

  • 0
Bom... para trocar o link pelo botão é só criar o campo input do tipo button que redirecione para a página que você quer:

<input type='button' value='Gerar Arquivo excel' onclick="window.location='caminho/excel_clientes_bloqueados.php';"/>

Quanto à página excel_clientes_bloqueados.php, existem várias maneiras de fazer o que você quer... uma seria quando a pessoa realizasse a consulta com os filtros na outra página, você guardasse o comando SQL que foi executado em uma session e na página excel_clientes_bloqueados.php você re-executasse este comando. Outra alternativa é você passar os parâmetros do filtro da busca para a página excel_clientes_bloqueados.php...

Cara postei esta mesma duvida em outro forum....você foi o unico q respondeu alias q entendeu hehe....teve gente q nem entendeu a minha duvida hehe....valeu pela ajuda.

quanto ao botao deu certo era isso q eu queria....quanto a isso de usar SESSION poderia me explicar melhor como eu poderia fazer isso? Se possivel me dar um exemplo

Valeu

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      651,9k
×
×
  • Criar Novo...