Ir para conteúdo
Nozaki777

Consumir dados de uma API dentro de DataTable

Recommended Posts

Preciso disponibilizar uma consulta, dentro de um DataTable. Sendo que os dados listados virá através de um link de API (http://governotransparente.com.br/transparencia/api/v1/json/4393487/pessoas/:nome). Onde "/:nome", tenho que colocar algum nome, e a consulta irá me retornar apenas a lista que contenha o nome que coloquei. Segue a pergunta: como faço para listas todos os dados da tabela, sem especificar nomes, e mostrar esses dados dentro do DataTable?

Vale ressaltar que o retorno dessa API está no formato json.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por ZeroCood
      Senhores bom dia, preciso pegar um retorno de uma api da procob ele retorna um json, nao estou conseguindo pegar o retorno, alguem pode me ajudar, veja o codigo: 
      { "code": "000", "message": "Consulta de testes com dados fictícios", "date": "2019-03-19", "hour": "10:07:41", "content": { "nome": { "existe_informacao": "SIM", "conteudo": { "documento": "99999999999", "tipo_documento": "PF", "nome": "JOÃO DA SILVA", "outras_grafias": [ "JOÃO D SILVA", "JOÃO SILVA" ], "data_nascimento": "15/06/1979", "outras_datas_nascimento": [ "25/06/1979" ], "idade": "26", "signo": "Gêmeos", "obito": "NAO", "sexo": "M", "uf": "RS,CE,", "situacao_receita": "REGULAR", "situacao_receita_data": "2016-10-17", "situacao_receita_hora": "11:02:49", "estrangeiro": { "existe_informacao": "SIM", "estrangeiro": "NAO", "pais_origem": { "codigo": "10", "origem": "Brasileiro" } } } }, "dados_parentes": { "existe_informacao": "SIM", "conteudo": [ { "documento": "88888888888", "nome": "MARIA DA SILVA", "campo": "mae", "obito": "NAO", "tipo_beneficio": "", "aposentado": "NAO" } ] }, "pessoas_contato": { "existe_informacao": "SIM", "conteudo": [ { "documento": "77777777777", "nome": "LUIZ SOUZA", "endereco": "SAO CLEMENTE", "bairro": "CENTRO", "cep": "44642000", "cidade": "VARJOTA", "uf": "CE" } ] }, "pesquisa_enderecos": { "existe_informacao": "SIM", "conteudo": [ { "logradouro": "RUA", "endereco": "SAO CLEMENTE", "bairro": "CENTRO", "cidade": "VARJOTA", "numero": "13", "cep": "44642000", "bloco": "", "apto": "", "casa": "", "quadra": "", "lote": "", "complemento": "", "uf": "CE" } ] }, "trabalha_trabalhou": { "existe_informacao": "SIM", "conteudo": [ { "documento": "92787126000176", "nome": "PADARIA PETER PÃO", "logradouro": "RUA", "endereco": "INÁCIO DA SILVA", "bairro": "CENTRO", "cidade": "CURITIBA", "numero": "999", "cep": "87878787", "bloco": "", "apartamento": "", "casa": "", "quadra": "", "lote": "", "complemento": "", "uf": "PR", "telefones": [ { "ddd": "99", "telefone": "99999999", "tipo": "fixo" } ] } ] }, "contato_preferencial": { "existe_informacao": "SIM", "conteudo": { "telefone_fixo": { "ddd": "99", "telefone": "99999999" }, "telefone_celular": { "ddd": "99", "telefone": "99999999" }, "telefone_outros": { "ddd": "41", "telefone": "33333333" }, "parentes": { "documento": "99999999999", "nome": "MATHEUS ALENCAR", "tipo": "pai" }, "contatos": { "documento": "99999999999", "nome": "MARIA ROBERTA PEREIRA" }, "empregador": { "documento": "99999999999", "nome": "JOAO NASCIMENTO SANTOS" }, "email": "email@email.com", "endereco": { "endereco": "FRANCISCO JOSE", "numero": "42", "cidade": "Curitiba", "estado": "PR", "cep": "99999999" } } }, "residentes_mesmo_domicilio": { "existe_informacao": "SIM", "conteudo": [ { "nome": "CARLA TEIXEIRA", "documento": "99999999999" }, { "nome": "LUIZ PEREIRA", "documento": "99999999999" } ] }, "emails": { "existe_informacao": "SIM", "conteudo": [ { "email": "joao@email.com", "pontuacao": "0" }, { "email": "joao.fernando@email2.com", "pontuacao": "0" } ] }, "numero_beneficio": { "existe_informacao": "SIM", "conteudo": { "numero": "999999999", "ano_aposentadoria": "7", "tipo_aposentadoria": "Aposentadoria Por Tempo De Contribuição", "aposentado": "SIM", "inss": "SIM", "acidente_trabalho": "SIM", "afastado_doenca": "SIM", "emprestimo": "SIM", "banco_nome": "Itaú Unibanco S.A.", "banco_agencia": "DUQUE DE CAXIAS/JARDIM PRIMAVERA", "banco_endereco": "ROD. WASHINGTON LUIZ, S/Nº", "banco_numero": "0", "banco_complemento": "QUADRA 3 - LOTE 5", "banco_bairro": "PARQUE SANTA LÚCIA", "banco_c_e_p": "99999999", "banco_cidade": "DUQUE DE CAXIAS", "banco_estado": "RJ" } }, "alerta_participacoes": { "existe_informacao": "SIM", "conteudo": { "existe": "SIM", "quantidade": 3 } }, "pesquisa_telefones": { "existe_informacao": "SIM", "conteudo": { "fixo": [ { "ddd": "51", "telefone": "11111111", "operadora": "Embratel - Fixo", "pontuacao": "0" } ], "celular": [ { "ddd": "41", "telefone": "22222222", "operadora": "TIM - Celular", "pontuacao": "0" } ], "outros": [ { "ddd": "41", "telefone": "33333333", "operadora": "OI - Fixo", "pontuacao": "0" } ], "comercial": [ { "ddd": "51", "telefone": "66666666", "operadora": "Embratel - Fixo", "pontuacao": "0" } ] } }, "outros_documentos": { "existe_informacao": "NAO" } } }  
      como faço para pegar esse json e mostrar cada um exe: comercial: -- , outros documentos: --
       
    • Por guinigri
      Boa tarde, preciso passar o valor do frete exibido da API dos correios para o pag seguro mas não estou conseguindo!
      Exemplo:
       
      O cliente entra no meu site add um produto ao carrinho e verifica o frete no próprio carrinho, seleciona se quer PAC ou SEDEX, e quando apertar no botão de pagamento do Pagseguro, ele envia o valor do frete selecionado para a API do pagseguro
       
      Segue os Codigos:
       
      --> FORM DO FRETE COM RETORNO DO VALOR:

       
      <form method="post" action="#" class="navbar-form navbar-left" role="textbox" id="t1" name="t1">                          <div class="form-group">          Simular frete: <input type="text" class="form-control" name="frete" placeholder="Frete" required id="frete">             <input type="hidden" name="vldeclarado" value="<?php echo $exibir['preco'];?>" />         </div>                                     <button class="btn btn-success" type="submit" name="submit">             <span class="glyphicon glyphicon-search"></span>                        </button>                                  </form>                          <?php             if($_POST):?>                 <div class="row">             <div class="col-sm-12" style="margin-top: 10px; margin-bottom: 0px; border-style: none; border-top: none; border-color: #CBCBCB; border-width: 3px;">                                  <?php             $frete = trim($_POST['frete']);             //echo "<h3>{$frete}</h3>";               require_once 'frete.php';             $table = frete( $frete );               echo $table;?>                                </div></div><?php     endif;//POST                              ?> --> API DO PAGSEGURO:
      <form method="post" target="pagseguro" action="https://pagseguro.uol.com.br/v2/checkout/payment.html">                        <!-- Campos obrigatórios -->           <input name="receiverEmail" type="hidden" value="EMAIL@gmail.com">              <input name="currency" type="hidden" value="BRL">             <!-- Itens do pagamento (ao menos um item é obrigatório) -->         <?php              $i = 1;         do{             foreach ($_SESSION['carrinho'] as $id_prod => $qnt)  {                 $code_prod = $conexao->query("SELECT * FROM produtos where id = '$id_prod'");         $exi = $code_prod->fetch(PDO::FETCH_ASSOC);                 $prod = $exi['produto'];                 $precouni = number_format(($exi['preco']),2,'.',',');                          ?>                   <input name="itemId<?php echo $i; ?>" type="hidden" value="<?php echo $id_prod;?>">                   <input name="itemDescription<?php echo $i; ?>" type="hidden" value="<?php echo $prod; ?>">                   <input name="itemAmount<?php echo $i; ?>" type="hidden" value="<?php echo $precouni; ?>">                   <input name="itemQuantity<?php echo $i; ?>" type="hidden" value="<?php echo $qnt; ?>">                                                   <input name="itemWeight<?php echo $i; ?>" type="hidden" value="0">         <?php         $i++;              }                      } while($i <= count($_SESSION['carrinho'])); ?>                     <input name="itemShippingCost1" type="hidden" value="300"> (VALOR DO FRETE AQUI)                                    <!-- Informações de frete (opcionais) -->           <input name="shippingType" type="hidden" value="">  (TIPO DE FRETE SELECIONADO AQUI) Desculpe se ficou grande, se alguem puder me ajudar ficaria grato!
       
    • Por markhosbh
      Prezados, boa tarde!
       
      Estou tendo dificuldades para transformar um retorno WebService em uma tabela HTML.
      A minha dificuldade está na seguinte condição, se fosse cabeçalho fixo bastava eu utilizar o foreach para percorrer o array e estava ok.
      Porém, a quantidade de campos do array de retorno não é fixo, aí que se encontra minha dificuldade, como fazer para ler e imprimir o cabeçalho e o conteúdo da tabela, sendo que essas informações podem variar.
       
      Exemplo:
       
      Requisição: 
      SELECT A1_COD, A1_NOME, TIPO FROM USUARIO  
      Retorno:
      [ {"A1_COD":"0093","A1_NOME":"JOAO","TIPO":"TITULAR"}, {"A1_COD":"0016","A1_NOME":"ABELARDO","TIPO":"TITULAR"}, {"A1_COD":"8586","A1_NOME":"ADRIANA","TIPO":"TITULAR"} ]  
      Array:
      Array ( [0] => Array ( [A1_COD] => 0093 [A1_NOME] => JOAO [TIPO] => TITULAR ) [1] => Array ( [A1_COD] => 0016 [A1_NOME] => ABELARDO [TIPO] => TITULAR ) [2] => Array ( [A1_COD] => 8586 [A1_NOME] => ADRIANA [TIPO] => TITULAR ) ) Quero que seja impresso em uma tabela html
       
      A1_COD A1_NOME TIPO 0093 JOAO TITULAR 0016 ABELARDO TITULAR 8586 ADRIANA TITULAR  
      Mas como informado o cabeçalho poderia variar, sendo a requisição por exemplo ser:
       
      SELECT * FROM USUARIO  
      Desde então agradeço.
    • Por rd111072
      Olá, amigos.

      Estou gerando um arquivo .json com PHP, mas o mesmo quando é criado está mal formatado, não é possível ler seus dados. Vejam:
       
      { "0": "6", "idt1": "6", "1": "2018-10-19", "datahora": "2018-10-19", "2": "1", "resultado": "1", "3": "1", "indicbet": "1", "4": "Inglaterra - Premier League 2", "LIGA": "Inglaterra - Premier League 2", "5": "", "rh": "", "6": "", "ra": "", "7": " Fulham SubWest Brom Sub", "TIMEHA": " Fulham SubWest Brom Sub", "8": "71", "TARGLG": "71", "9": "0", "PLACH": "0", "10": "2", "PLACA": "2", "11": "GREEN", "RESULT": "GREEN" }{ "0": "6", "idt1": "6", "1": "2018-10-19", "datahora": "2018-10-19", "2": "1", "resultado": "1", "3": "1", "indicbet": "1", "4": "Inglaterra - Premier League 2", "LIGA": "Inglaterra - Premier League 2", "5": "", "rh": "", "6": "", "ra": "", "7": " Fulham SubWest Brom Sub", "TIMEHA": " Fulham SubWest Brom Sub", "8": "71", "TARGLG": "71", "9": "0", "PLACH": "0", "10": "2", "PLACA": "2", "11": "GREEN", "RESULT": "GREEN" } Como podem ver, faltam os colchetes no início e no fim e as vírgulas entre os "arrays".

      Aqui o código que gera o json:

       
      while($rowJ = mysqli_fetch_array($resultJ)){ if(count($_items) > 1){ //criar JSON/tabela do USUARIO // Escreve o resultado JSON em arquivo: $idu = $_SESSION['idu_log_pn']; $idu = 1; $pasta = $idu; $diretorio = "users/".$pasta; if(!file_exists($diretorio)) { mkdir("$diretorio", 0777); } // Tranforma o array $dados em JSON $dados_json = json_encode($rowJ, JSON_PRETTY_PRINT); // Cria o arquivo cadastro.json // O parâmetro "a" indica que o arquivo será aberto para escrita $fp = fopen("users/".$idu."/file".$idu.".json", "a"); // Escreve o conteúdo JSON no arquivo $escreve = fwrite($fp, $dados_json); // Fecha o arquivo fclose($fp); } } Alguém pode ajudar?
    • Por rafaelwww
      Sou novo no fórum e essa é a minha primeira postagem.
      não sei se essa é área apropriada para esse tipo de postagem, mas vamos lá eu tenho um site e queria criar uma opção no qual o usuário poderia gravar um áudio que seria salvo em um banco de
      dados, mas não tenho ideia de como fazer isso se existe uma API que faça isso . 
      Peço por gentileza se alguém pudesse me dar uma dica.
       
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.