PHP exportar em CSV dados do banco MYSQL e dados fora do banco

23/02/2021

0

PHP

Ola,

Eu possuo um codigo que gera perfeitamente uma tabela na pagina HTML. Eu gostaria que fosse gerado em um arquivo csv, entretanto dentre estes dados existem uma entrada que não está no MYSQL (""status"").

Não encontrei na internet a solução deste problema, que aparentemente deve ser simples. Poderiam me ajudar?

------------------------------------
//consultando o banco de dados e gerando o array no resultado "$retorno"
$sql = " SELECT  id , name as nome FROM tc_devices  " ;
$resultado = $conn_mysqli_connect__mysqli_connect->query($sql) OR trigger_error($conn_mysqli_connect__mysqli_connect->error, E_USER_ERROR);

//loop no banco Mysql-------------- buscando""id"" e ""nome""
while ($retorno = $resultado->fetch_object()) {
    $ID_DEVICE = $retorno->id ;
    $NOME = $retorno->nome ;

//utilizando o "$ID_DEVICE" retornado e buscando o ""status"" (dados externos atraves docomando CURL //parte relevante do codigo)
    $y =gps::devices($sessionId,$ID_DEVICE );  
        $response_y = $y->response;         $obj_Devices_y = json_decode($response_y,true);    
        $API_device_status =$obj_Devices_y[0]['status']; // <<<=========retorno do status


                                     ?>
                                     
                                     <br>
                                     <table>
                                        <tr>
                                            <td>  <?php echo $API_device_status ?>  </td>
                                            <td>  <?php echo $NOME ?>  </td>                                        
                                        
                                        </tr>
                                     </table>
                                     
                                     
                                     <?php
                                     
      }//while

?>

---------------------------------------------
Alexandre

Alexandre

Responder

Posts

25/02/2021

Heraldo Araujo

Ola,

Eu possuo um codigo que gera perfeitamente uma tabela na pagina HTML. Eu gostaria que fosse gerado em um arquivo csv, entretanto dentre estes dados existem uma entrada que não está no MYSQL (""status"").

Não encontrei na internet a solução deste problema, que aparentemente deve ser simples. Poderiam me ajudar?

------------------------------------
//consultando o banco de dados e gerando o array no resultado "$retorno"
$sql = " SELECT  id , name as nome FROM tc_devices  " ;
$resultado = $conn_mysqli_connect__mysqli_connect->query($sql) OR trigger_error($conn_mysqli_connect__mysqli_connect->error, E_USER_ERROR);

//loop no banco Mysql-------------- buscando""id"" e ""nome""
while ($retorno = $resultado->fetch_object()) {
    $ID_DEVICE = $retorno->id ;
    $NOME = $retorno->nome ;

//utilizando o "$ID_DEVICE" retornado e buscando o ""status"" (dados externos atraves docomando CURL //parte relevante do codigo)
    $y =gps::devices($sessionId,$ID_DEVICE );  
        $response_y = $y->response;         $obj_Devices_y = json_decode($response_y,true);    
        $API_device_status =$obj_Devices_y[0]['status']; // <<<=========retorno do status


                                     ?>
                                     
                                     <br>
                                     <table>
                                        <tr>
                                            <td>  <?php echo $API_device_status ?>  </td>
                                            <td>  <?php echo $NOME ?>  </td>                                        
                                        
                                        </tr>
                                     </table>
                                     
                                     
                                     <?php
                                     
      }//while

?>

---------------------------------------------
Responder

25/02/2021

Heraldo Araujo

Ola,


Veja, acredito que vc queira saber como gravar(dentro daquele seu loop) um arquivo .txt(a mesma cosia de .csv), não é isso?

Vamos lá...vou te dar um exemplo de código php de como gravar um arquivo .txt , acredito que servirá para teu problema:

// aqui, cria arquivo só para gravação;
$fp = fopen("nome_do_arquivo.csv", 'a+') ;

while( "sua_condição" ) {
...
...
...
$linha = "formate aqui o que vc quiser, inclusive, comandos html ";
fwrite($fp, "$linha \\n"); // "/n" serve para forçar quebra de linha para qualquer editor de arquivo;
...
...
...

}


// aqui, fecha o arquivo;

//fclose($fp);




Responder

25/02/2021

Heraldo Araujo

Obs.: onde leu-se barra dupla, leia-se barra única. Não tive culpa, é a página que está adicionando mais uma barra
Responder

25/02/2021

Alexandre

Obrigado pelo retorno.

O que colocar dentro o $linha, visto que tenho um array completo e informação fora que entra em cada linha do array?

Responder

25/02/2021

Alexandre

Obrigado pelo retorno.

O que colocar dentro o $linha, visto que tenho um array completo e informação fora que entra em cada linha do array?

Responder

25/02/2021

Alexandre

Nota : comecei a criar
um novo array com as informações do velho array+dado externo, mas não.é a melhor prática, pois consome muita memória... (Gambiarra)
Responder

25/02/2021

Alexandre

Nota : comecei a criar
um novo array com as informações do velho array+dado externo, mas não.é a melhor prática, pois consome muita memória... (Gambiarra)
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar