Angellis 0 Denunciar post Postado Março 7, 2006 Saudações,Preciso exportar os dados de contatos, para tal preciso fazer uma consulta ao bando de dados e montar um CVS para download.Fazer a consulta e montar o CVS sem problemas. A questão é:Como devo proceder para ele conseguir fazer o download?Eu tenho que criar um arquivo no servidor? Alguém tem expêriencia com algo do gênero?Grato, Compartilhar este post Link para o post Compartilhar em outros sites
Angellis 0 Denunciar post Postado Março 14, 2006 Ninguém pode me dar uma ajudar? http://forum.imasters.com.br/public/style_emoticons/default/blush.gif Compartilhar este post Link para o post Compartilhar em outros sites
Rafael Moura 0 Denunciar post Postado Março 14, 2006 Tenta ai, ele gera um txt, talvez te ajude: $fsep = ";"; // pode ser qualquer separador de campo que quiser$bd = @mysql_connect( "localhost", "user", "pass" )or die(mysql_error());@mysql_select_db( "nome_db", $conexao )or die(mysql_error());$consulta = "select * from nome_tabela";$resultado = mysql_query( $consulta, $bd);$sai = fopen("arquivo_texto.txt","a+");while ($linha = mysql_fetch_row($resultado)) {$result = fputs($sai,implode($fsep,$linha));echo $conteudo; // se quiser que o conteudo sai na tela tambem.}fclose($sai)Obs: script retirado do link: http://www.phpbrasil.com/faqs/faq.php/id/95 Dai você coloca o seguinte código pra fazer o download você coloca: $arquivo = "arquivo.txt";$tamanho = filesize($arquivo);header("Content-type: Application/unknown");header("Content-length: $tamanho");header("Content-Disposition: attachment; filename=$arquivo");header("Content-Description: PHP Generated Data");readfile($arquivo); Bom ve se te ajuda... Até mais.. Compartilhar este post Link para o post Compartilhar em outros sites
Angellis 0 Denunciar post Postado Março 14, 2006 Achei o problema faltava uma virgula.Só que agora estou com outro. No Firefox ele baixa um arquivo .php vazio e no IE recebo uma msg de erro.O que pode estar errado? Compartilhar este post Link para o post Compartilhar em outros sites
Rafael Moura 0 Denunciar post Postado Março 14, 2006 Ajustei a consulta as informações que eu preciso, mas na hora de baixar o arquivo, estou recebendo essa msg de erro:Parse error: parse error, unexpected T_VARIABLE in /var/www/contatos/exportar_cvs.php on line 24O que pode ser?Tem como você postar o código? Compartilhar este post Link para o post Compartilhar em outros sites
Angellis 0 Denunciar post Postado Março 14, 2006 Rafael eu achei o problema, faltava uma simples vírgula.O problema é que agora no Firefox quando executo a página, aparece a opção de baixar exportar_cvs.php e no IE eu recebo uma smg de erro dizendo: "O Internet Explorer não pode fazer o download de <nome_da_pagina> de <nome_da_maquina>O Internet Explorer não pode abrir esse site da Internet. O site solicitado não está disponível ou não pode ser ecnontrado. Tente novamente mais tarde.Alguma coisa no header está errado?Porque o arquivo.txt existe no servidor. Compartilhar este post Link para o post Compartilhar em outros sites
Rafael Moura 0 Denunciar post Postado Março 14, 2006 Vou verificar oq pode ser... Compartilhar este post Link para o post Compartilhar em outros sites
Angellis 0 Denunciar post Postado Março 14, 2006 Rafael, acho que era eu que estava fazendo cagada mesmo. Agora está ok.Muito obrigado pela ajuda.Só mais uma perguntinha, quando eu gerar um outro arquivo txt, ele irá sobrescrever o antigo?Porque a minha consulta será a toda hora diferente. Grato, Compartilhar este post Link para o post Compartilhar em outros sites
Rafael Moura 0 Denunciar post Postado Março 14, 2006 Neste caso seria interessante você implementar um código que criasse o arquivo txt dinamicamente... Compartilhar este post Link para o post Compartilhar em outros sites
Angellis 0 Denunciar post Postado Março 14, 2006 Como assim?Eu estava pensando em apenas apagar ele depois de mandar os headers.Não daria certo? Compartilhar este post Link para o post Compartilhar em outros sites
Rafael Moura 0 Denunciar post Postado Março 14, 2006 Acho q funciona sim... Da uma olhada neste link http://www.phpbrasil.com/articles/article.php/id/759 Compartilhar este post Link para o post Compartilhar em outros sites
Angellis 0 Denunciar post Postado Março 16, 2006 O código estava funcionando perfeitamente aqui no servidor local. Quando coloquei no servidor remoto, comecei a receber a seguinte msg de erro: Warning: fopen(arquivo.csv): failed to open stream: Permission denied in /home/dant/public_html/contatos/exportar_csv.php on line 37Warning: fputs(): supplied argument is not a valid stream resource in /home/dant/public_html/contatos/exportar_csv.php on line 40Warning: fclose(): supplied argument is not a valid stream resource in /home/dant/public_html/contatos/exportar_csv.php on line 42 Parece ser alguma coisa relacionada a permissão para criar o arquivo. Como procedo? Compartilhar este post Link para o post Compartilhar em outros sites
Rafael Moura 0 Denunciar post Postado Março 16, 2006 Problema de permissão pro php ler/gravar o arquivo... você vai ter q ver com os adm do server Compartilhar este post Link para o post Compartilhar em outros sites