How to write the fetch result to a txt and then download it?

0

I have following code

$arquivo = fopen("descricao.txt","w");

while($dados = $cod_user->fetch_array()){ 
$bla = $dados['descricao'];
echo $dados['descricao'];

fwrite($arquivo,$bla);

How do I choose the directory to save the file and then download it?

    
asked by anonymous 08.03.2017 / 14:02

1 answer

0

It's not clear what you're trying to do, but I think what you want is to fetch data from the database and write to a txt file on the server. So if this is it, the traquitana follows below:

<?php

$conn = new mysqli ("localhost", "USUARIO", "SENHA", "nomeDB");

$query = ("SELECT coluna FROM suaTabela");
$result = mysqli_query($conn, $query);

while($row = mysqli_fetch_assoc($result)) {
    $conteudo=$conteudo.chr(10).$row['n']."\r\n";
}

mysqli_close($conn);

$arquivo="linhas.txt";

file_put_contents($arquivo, $conteudo); 

/*
==========================================================================
Se o arquivo (linhas.txt) não existir, o arquivo é criado.
Do contrário, o arquivo é sobrescrito,
a não ser que o parâmetro FILE_APPEND seja definido e
nesse caso acrescenta os dados ao arquivo ao invés de sobrescrevê-lo.
Dessa forma acrescente esse parâmetro na linha file_put_contents, que
deverá ficar assim:  file_put_contents($arquivo, $conteudo, FILE_APPEND);
==========================================================================
*/

/* pode usar o trecho abaixo ao invés de file_put_contents
   $arq = fopen($arquivo,"w");
   fwrite($arq,$conteudo);
   fclose($arq);
*/

?>

And to download the file after it has been written, add that section before the PHP closing tag so that the download options window opens.

header('Content-type: octet/stream');
header('Content-disposition: attachment; filename="'.$arquivo.'";'); 
readfile($arquivo);

file_put_contents link

fwrite link

    
08.03.2017 / 23:03