felipepriess Posted April 26, 2012 Report Share Posted April 26, 2012 Estou com um problema, minha pagina para gerar e fazer o download do arquivo esta funcionando perfeitamente, o problema é que a ultima linha do codigo, o meta , continua sendo escrito no arquivo, mesmo eu tendo fechado com fclose(); antes.fclose($arq); $arquivo = $cpf.".txt"; Header("Content-type: text/html"); Header("Content-Disposition: attachment; filename=$arquivo"); readfile($arquivo); $total_final = str_replace(',','.', $total_final); $dados=array ( 'cpf_clientes' => $cpf, 'total_vendas' => $total_final ); $cad_total=inclusaobd("total_vendas", $dados); ?> <meta http-equiv=' Refresh' content=' 0;url=form_venda.php' >alguém sabe o que está errado ? Quote Link to comment Share on other sites More sharing options...
0 dinohills Posted April 26, 2012 Report Share Posted April 26, 2012 Tarde,posta ai como esta sua variavel $arq. Quote Link to comment Share on other sites More sharing options...
0 felipepriess Posted April 26, 2012 Author Report Share Posted April 26, 2012 Código completo da pagina<?php include "../arqinc/conexao.php"; include "../arqinc/funcoesbd.php"; $cpf=$_GET['cpf']; $cod_max='15'; $desc_max='60'; $preco_max='30'; $quantidade_max='20'; $total_max='30'; $sql_cliente="SELECT * FROM clientes WHERE cpf='$cpf'"; $query_cliente= mysql_query($sql_cliente); while ($cliente_dados = mysql_fetch_assoc($query_cliente)) { $nome_cliente=$cliente_dados["cliente"]; $endereco_cliente=$cliente_dados["endereco"]; $telefone_cliente=$cliente_dados["telefone"]; $email_cliente=$cliente_dados["email"]; } $arq = fopen($cpf.".txt","w"); fwrite($arq,"Cliente: $nome_cliente CPF: $cpf Endereço: $endereco_cliente Telefone: $telefone_cliente E-Mail: $email_cliente ================================================================================================ Código Descrição Preço Quantidade Total ================================================================================================"); $val=mysql_query("SELECT * FROM vendas WHERE cpf_clientes='$cpf' AND finalizado='0'"); $val_num = mysql_affected_rows(); $total_final=0; while($val_query=mysql_fetch_array($val)){ $codigo=$val_query["codigo_produtos"]; $descricao=$val_query["descricao_produtos"]; $preço=$val_query["preco_produtos"]; $preço = str_replace('.',' ', $preço); $quantidade=$val_query["quantidade_produtos"]; $total=$val_query["total"]; $total = str_replace('.',' ', $total); $id=$val_query["id_venda"]; $total=$preço * $quantidade; $total_bd=$total; $total_bd = number_format($total_bd, 2, '.', '.'); $total_final=$total_final+$total_bd; $preço = str_replace(' ',',', $preço); $total = number_format($total, 2, ',', ','); while (strlen($codigo) < $cod_max) { $codigo="0" . $codigo; } while (strlen($descricao) < $desc_max) { $descricao=" " . $descricao; } while (strlen($preço) < $preco_max) { $preço=" " . $preço; } while (strlen($quantidade) < $quantidade_max) { $quantidade=" " . $quantidade; } while (strlen($total) < $total_max) { $total=" " . $total; } fwrite($arq," $codigo $descricao $preço $quantidade $total"); $condicao="id_venda='$id'"; $finalizado=1; $dados=array ( 'finalizado' => $finalizado, 'total' => $total_bd ); $cad_total=alterabd("vendas", $dados, $condicao); } $total_final = number_format($total_final, 2, ',', ','); fwrite($arq," ------------------------------------------------------------------------------------------------------------------------------------------------- Total final da venda: $total_final"); fclose($arq); $arquivo = $cpf.".txt"; Header("Content-type: text/html"); Header("Content-Disposition: attachment; filename=$arquivo"); readfile($arquivo); $total_final = str_replace(',','.', $total_final); $dados=array ( 'cpf_clientes' => $cpf, 'total_vendas' => $total_final ); $cad_total=inclusaobd("total_vendas", $dados); ?> <meta http-equiv=' Refresh' content=' 0;url=form_venda.php' >No arquivo txt fica assim Quote Link to comment Share on other sites More sharing options...
0 dinohills Posted April 26, 2012 Report Share Posted April 26, 2012 Cara consegui uma coisa, mas é o seguinte o direcionamento da página so vai acontecer se a pessoa fazer o download do txt, caso contrario não acontece o redirecionamento.No final do seu script coloque istoheader( "refresh:2;url=pagina.php" );T+ Quote Link to comment Share on other sites More sharing options...
0 felipepriess Posted April 26, 2012 Author Report Share Posted April 26, 2012 então cara, coloquei o "header( "refresh:2;url=form_venda.php" );" no final do script, mas parece que ele não executa essa parte, parece que ele faz o Header para download do arquivo mas não o header para redirecionamento, o download esta ocorrendo normal, mas não acontece o redirecionamento :/ Quote Link to comment Share on other sites More sharing options...
0 dinohills Posted April 26, 2012 Report Share Posted April 26, 2012 (edited) Estranho, comigo foi normal.Teste dessa formaheader("Status: 200"); header( "refresh:1;url=http://www.cade.com.br"); Edited April 26, 2012 by dinohills Quote Link to comment Share on other sites More sharing options...
0 felipepriess Posted April 26, 2012 Author Report Share Posted April 26, 2012 no firefox funcionou com o header( "refresh:2;url=form_venda.php" ); só no chrome que não :/ Quote Link to comment Share on other sites More sharing options...
0 dinohills Posted April 26, 2012 Report Share Posted April 26, 2012 Inclusive com o header("Status: 200"); ?Teve um cara que disse que no chrome mesmo só funciona usando com isso.header() Quote Link to comment Share on other sites More sharing options...
0 felipepriess Posted April 26, 2012 Author Report Share Posted April 26, 2012 também não funciona com o status 200, tentei tanto com location quanto com o "header( "refresh:2;url=form_venda.php" ); "muito estranho ... no FF ta funcionando de boa Quote Link to comment Share on other sites More sharing options...
Question
felipepriess
Estou com um problema, minha pagina para gerar e fazer o download do arquivo esta funcionando perfeitamente, o problema é que a ultima linha do codigo, o meta , continua sendo escrito no arquivo, mesmo eu tendo fechado com fclose(); antes.
alguém sabe o que está errado ?
Link to comment
Share on other sites
8 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.