Ir para conteúdo

Pesquisar na Comunidade

Mostrando resultados para as tags ''curl''.

  • Pesquisar por Tags

    Digite tags separadas por vírgulas
  • Pesquisar por Autor

Tipo de Conteúdo


Todas as áreas do Fórum

  • Q&A Desenvolvimento
    • Perguntas e respostas rápidas
  • Desenvolvimento Web
    • Desenvolvimento frontend
    • Javascript
    • PHP
    • Ruby
    • Python
    • Java
    • .NET
    • Docker, Kubernets e outros ambientes
    • Desenvolvimento com Wordpress
    • Desenvolvimento de apps
    • Desenvolvimento ágil
    • Desenvolvimento de Games
    • Banco de Dados
    • Design e UX
    • Algoritmos & Outras Tecnologias
  • Entretenimento e uso pessoal
    • Segurança & Malwares
    • Geral
    • Boteco iMasters

Encontrar resultados em...

Encontrar resultados que...


Data de Criação

  • Início

    FIM


Data de Atualização

  • Início

    FIM


Filtrar pelo número de...

Data de Registro

  • Início

    FIM


Grupo


Google+


Hangouts


Skype


Twitter


deviantART


Github


Flickr


LinkedIn


Pinterest


Facebook


Site Pessoal


Localização


Interesses

Encontrado 20 registros

  1. gustavopinent

    Erro cURL unable to get local issuer certificate

    Olá! Esse erro ocorre em um php simples rodando em um servidor compartilhado Locaweb: SSL certificate problem: unable to get local issuer certificate. O php faz uma requisição ao site do Cep Aberto para consulta de endereço informando o CEP (https://www.cepaberto.com/api/v3/cep?cep=95020520) Olhei o php.ini e não tem nenhuma menção ao arquivo de certificados. Então peguei alguns tutoriais, baixei o arquivo "cacert.pem", coloquei lá e defini o curl no próprio php, ficou assim: $ch = curl_init($url); curl_setopt($ch, CURLOPT_HTTPHEADER, ['Authorization: Token token="' . $token . '"']); curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); curl_setopt($ch, CURLOPT_CAINFO, $cacert); curl_setopt($ch, CURLOPT_CAPATH, $cacert); $res = curl_exec($ch); if($res===FALSE) { $Res["erro"] = "curl"; $Res["msg"] = "Execução CURL falhou!"; $Res["descr"] = curl_error($ch); } else { $Res["dados"] = json_decode($res); $Res["http"] = curl_getinfo($ch, CURLINFO_HTTP_CODE); $Res["erro"] = ($Res["http"]==200)? "OK" : "http" ; $Res["msg"] = ($Res["http"]==200)? "" : "Erro HTTP ".$Res["http"] ; } Onde $cacert é o endereço do arquivo "cacert.pem", verificado antes por is_file. Mas o erro é o mesmo, como se eu nada tivesse feito. Tem que configura o Apache? Não sei como configurar o Apache, será que posso? Desabilitar o SSL do php é uma opção que não tentei ainda, dizem que não é aconselhável... O PHP é o 5.6 (pretendo ir pro 7.4 em breve) e o servidor é CENTOS 5.11 compartilhado, hospedagem Locaweb. Alguma ideia?
  2. Boa tarde pessoal, Sou meio novo em programação web. Estou com o seguinte problema, qualquer ajuda será bem vinda. Em PHP, etou montando uma URL pra ser acessada com o comando Curl. Tudo está funcionando, consigo executar e receber o retorno da URL no meu script. Porém o retorno parece vir em html, e a resposta que eu quero estar está no meio de tudo. <form name="IntegracaoForm" method="post" action="/integracao.do;jsessionid=C221B55C9AF93E1A94403FAA52943FB0" enctype="multipart/form-data" id="IntegracaoForm"> <table > <tbody> <tr> <td> 000 </td> </tr> </tbody> </table> </form><br>FIM<br>-> <br /> O código de retorno vem onde está o 000. No caso eu preciso validar esse retorno, mas eu não estou conseguindo uma forma de jogar esse valor pra uma variável pra realizar um if. Alguém pode me dar alguma ideia? Agradeço desde já.
  3. <?php function doPut($url, $fields) { $fields = (is_array($fields)) ? http_build_query($fields) : $fields; if ($ch = curl_init($url)) { curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PUT'); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Length: ' . strlen($fields))); curl_setopt($ch, CURLOPT_POSTFIELDS, $fields); curl_exec($ch); //$resp = curl_exec($ch); $status = curl_getinfo($ch, CURLINFO_HTTP_CODE); curl_close($ch); return (int) $status; } else { return false; } } session_start(); $s_chave = $_POST['edtChave']; $_SESSION['s_chave'] = $s_chave; $edtChave = $_POST['edtChave']; $edtCultura = $_POST['edtCultura']; $edtPraga = $_POST['edtPraga']; $edtDose = $_POST['edtDose']; $edtEspecificacao = $_POST['edtEspecificacao']; $edtAplicaTerrestre = $_POST['edtAplicaTerrestre']; $edtAplicarea = $_POST['edtAplicarea']; $edtIntseg = $_POST['edtIntseg']; $edtIntEntrada = $_POST['edtIntEntrada']; $edtDadosGerais = $_POST['edtDadosGerais']; $url = "www.api.site.com"; echo 'Url = ' . $url; echo '<br>'; $data_array2 = array(); for ($i = 0; $i < 5; $i++) { $montagem_array = array( 'cultura' => $_POST['edtCultura'], 'praga' => $_POST['edtPraga'], 'dose' => $_POST['edtDose'], 'especificacao' => $_POST['edtEspecificacao'], 'aplicaterrestre' => $_POST['edtAplicaTerrestre'], 'aplicaerea' => $_POST['edtAplicarea'], 'intseg' => $_POST['edtIntseg'], 'intentrada' => $_POST['edtIntEntrada'], 'dadosgerais' => $_POST['edtDadosGerais'], ); $data_array2[$i] = $montagem_array; } //$json = json_encode($data_array2); echo '<br>'; echo 'Array convertido para formato json: ' . json_encode($data_array2); echo '<br>'; //$data = $array_para_string; //echo $data.'+cultura=asdf&praga=asdf&dose=dasf&especificacao=sadf&aplicaterrestre=sadf&aplicaerea=asdf&intseg=2&intentrada=1&dadosgerais=sdaf'; $header = array( 'Authorization: falkdsjçlaskf' ); //Nova tentativa 07/01/2022 if (doPut($url, $data_array2) == 200) { echo 'Passou!'; echo '<br>'; echo json_encode($data_array2); echo '<br>'; } // do something else { echo 'Não deu certo'; echo '<br>'; echo json_encode($data_array2); echo '<br>'; } //Nova tentativa //header('location:jsonpostprodutobula_teste.php');
  4. <?php function doPut($url, $fields) { $fields = (is_array($fields)) ? http_build_query($fields) : $fields; if ($ch = curl_init($url)) { curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PUT'); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Length: ' . strlen($fields))); curl_setopt($ch, CURLOPT_POSTFIELDS, $fields); curl_exec($ch); //$resp = curl_exec($ch); $status = curl_getinfo($ch, CURLINFO_HTTP_CODE); curl_close($ch); return (int) $status; } else { return false; } } session_start(); $s_chave = $_POST['edtChave']; $_SESSION['s_chave'] = $s_chave; $edtChave = $_POST['edtChave']; $edtCultura = $_POST['edtCultura']; $edtPraga = $_POST['edtPraga']; $edtDose = $_POST['edtDose']; $edtEspecificacao = $_POST['edtEspecificacao']; $edtAplicaTerrestre = $_POST['edtAplicaTerrestre']; $edtAplicarea = $_POST['edtAplicarea']; $edtIntseg = $_POST['edtIntseg']; $edtIntEntrada = $_POST['edtIntEntrada']; $edtDadosGerais = $_POST['edtDadosGerais']; $url = "www.api.site.com"; echo 'Url = ' . $url; echo '<br>'; $data_array2 = array(); for ($i = 0; $i < 5; $i++) { $montagem_array = array( 'cultura' => $_POST['edtCultura'], 'praga' => $_POST['edtPraga'], 'dose' => $_POST['edtDose'], 'especificacao' => $_POST['edtEspecificacao'], 'aplicaterrestre' => $_POST['edtAplicaTerrestre'], 'aplicaerea' => $_POST['edtAplicarea'], 'intseg' => $_POST['edtIntseg'], 'intentrada' => $_POST['edtIntEntrada'], 'dadosgerais' => $_POST['edtDadosGerais'], ); $data_array2[$i] = $montagem_array; } //$json = json_encode($data_array2); echo '<br>'; echo 'Array convertido para formato json: ' . json_encode($data_array2); echo '<br>'; //$data = $array_para_string; //echo $data.'+cultura=asdf&praga=asdf&dose=dasf&especificacao=sadf&aplicaterrestre=sadf&aplicaerea=asdf&intseg=2&intentrada=1&dadosgerais=sdaf'; $header = array( 'Authorization: falkdsjçlaskf' ); //Nova tentativa 07/01/2022 if (doPut($url, $data_array2) == 200) { echo 'Passou!'; echo '<br>'; echo json_encode($data_array2); echo '<br>'; } // do something else { echo 'Não deu certo'; echo '<br>'; echo json_encode($data_array2); echo '<br>'; } //Nova tentativa //header('location:jsonpostprodutobula_teste.php');
  5. Pessoal estou tentando realizar um put com um json utilizando a biblioteca curl, mas só consigo fazer um por vez. Existe alguma forma de fazer isso usando a biblioteca Curl do php? Segue o código fonte funcionando, mas o curl não está aceitando um array multidimensional. ***************************** <?php function doPut($url, $fields) { $fields = (is_array($fields)) ? http_build_query($fields) : $fields; if ($ch = curl_init($url)) { curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PUT'); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Length: ' . strlen($fields))); curl_setopt($ch, CURLOPT_POSTFIELDS, $fields); curl_exec($ch); //$resp = curl_exec($ch); $status = curl_getinfo($ch, CURLINFO_HTTP_CODE); curl_close($ch); return (int) $status; } else { return false; } } session_start(); $s_chave = $_POST['edtChave']; $_SESSION['s_chave'] = $s_chave; $edtChave = $_POST['edtChave']; $edtCultura = $_POST['edtCultura']; $edtPraga = $_POST['edtPraga']; $edtDose = $_POST['edtDose']; $edtEspecificacao = $_POST['edtEspecificacao']; $edtAplicaTerrestre = $_POST['edtAplicaTerrestre']; $edtAplicarea = $_POST['edtAplicarea']; $edtIntseg = $_POST['edtIntseg']; $edtIntEntrada = $_POST['edtIntEntrada']; $edtDadosGerais = $_POST['edtDadosGerais']; $url = "www.api.site.com"; echo 'Url = ' . $url; echo '<br>'; $data_array2 = array(); for ($i = 0; $i < 5; $i++) { $montagem_array = array( 'cultura' => $_POST['edtCultura'], 'praga' => $_POST['edtPraga'], 'dose' => $_POST['edtDose'], 'especificacao' => $_POST['edtEspecificacao'], 'aplicaterrestre' => $_POST['edtAplicaTerrestre'], 'aplicaerea' => $_POST['edtAplicarea'], 'intseg' => $_POST['edtIntseg'], 'intentrada' => $_POST['edtIntEntrada'], 'dadosgerais' => $_POST['edtDadosGerais'], ); $data_array2[$i] = $montagem_array; } //$json = json_encode($data_array2); echo '<br>'; echo 'Array convertido para formato json: ' . json_encode($data_array2); echo '<br>'; //$data = $array_para_string; //echo $data.'+cultura=asdf&praga=asdf&dose=dasf&especificacao=sadf&aplicaterrestre=sadf&aplicaerea=asdf&intseg=2&intentrada=1&dadosgerais=sdaf'; $header = array( 'Authorization: falkdsjçlaskf' ); //Nova tentativa 07/01/2022 if (doPut($url, $data_array2) == 200) { echo 'Passou!'; echo '<br>'; echo json_encode($data_array2); echo '<br>'; } // do something else { echo 'Não deu certo'; echo '<br>'; echo json_encode($data_array2); echo '<br>'; } //Nova tentativa //header('location:jsonpostprodutobula_teste.php');
  6. Boca

    Retorno curl

    Pessoas estou tentando receber o retorno do curl, mas não vem nada, e na url exibe normalmente os dados json <? $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $conteudo = curl_exec($ch); $result = json_decode($conteudo, true); curl_close($ch);
  7. Francisco455

    Curl não coleta dados externos

    Tenho uma requisição curl que não coelta os dados da url que preciso isso é problema da minha hospedagem? do servidor deles? ou algo errado no código abaixo: $ch = curl_init(); $chamada = 'http://www.google.nl/'; // FUNCIONA $chamada = 'https://sandbox.clicksign.com'; // NÃO FUNCIONA RETORNA VAZIO // informar URL e outras funções ao CURL curl_setopt($ch, CURLOPT_URL, $chamada); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // Acessar a URL e retornar a saída $output = curl_exec($ch); // liberar curl_close($ch); // Imprimir a saída echo $output;
  8. Boa noite, Peço a ajuda de vocês para o seguinte problema: Utilizo um script simples para mostrar uma página no meu site. O script é este: <?php $ch = curl_init(); $timeout = 5; // set to zero for no timeout //curl_setopt ($ch, CURLOPT_URL, "http://151.106.108.82:8080/SAES/TotaisSetor?setor=310900605000024" ); curl_setopt ($ch, CURLOPT_URL, "https://www.ibge.gov.br/indicadores#variacao-do-pib" ); curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout); $file_contents = curl_exec($ch); curl_close($ch);// display file echo $file_contents; ?> A página que está comentada é a que quero mostrar. Ela não funciona. A pagina do IBGE é mostrada sem problema. Isto ocorre no servidor Linux, na minha máquina com windows e Xamp funciona normalmente. Imagino que seja alguma configuração, mas não consegui encontrar qual é. Desde já agradeço. Um abraço, Carlos Lessa
  9. Rafael Ferreira_163968

    variavel php curl

    Boa noite, nunca mechi com curl e estou tomando uma surra bunita, se puderem me ajudar, estou consumindo uma api e preciso enviar dados do mysql para esta api, mas antes estou tentando testar com variaveis feitas a mao sem conectar no BD, funcionando com as variaveis eu desenrolo a consulta depois. segue codigo e duvida: <?php $curl = curl_init(); $numero = '000000000'; $msg = 'teste de mensagem BD'; curl_setopt_array($curl, array( CURLOPT_URL => "http://urldaapi", CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 30, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => "POST", CURLOPT_POSTFIELDS => "{\r\n \"menssage\": '.$msg.',\r\n \"number\": '.$numero.'\r\n}", CURLOPT_HTTPHEADER => array( "Authorization: 0000000000000000000", "cache-control: no-cache" ), )); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } nessa linha CURLOPT_POSTFIELDS => "{\r\n \"menssage\": '.$msg.',\r\n \"number\": '.$numero.'\r\n}", a original é a seguinte CURLOPT_POSTFIELDS => "{\r\n \"menssage\": \"Teste pela API\",\r\n \"number\": \"6200000000\"\r\n}", gostaria da ajuda dos colegas de como pegar essas variaveis $numero = '000000000'; e $msg = 'teste de mensagem BD'; e repassar elas para o CURLOPT_POSTFILDES, tentei como a primeira linha mas nao da, preciso modificar a linha original para consumir esses valores. podem me ajudar?
  10. Good

    Curl com acento não envia

    Bom dia, eu tenho um formulário que as pessoas preenchem o nome, endereço, email e outros dados. E ao fazer o envio do formulário, faz algumas validações em outras apis. O sistema funciona redondo. E ao terminar as validações, gravo no banco de dados e posteriormente é feito um envio via CURL para outro servidor, puxando os dados gravados no BD. E ao chegar no último servidor, é enviado alguns formulários e outros não. Eu percebi que os formulários que chegam até o último servidor eles não tem acentuação. Mas aí eu tive que criar um botão para reenviar os dados. Com isso eu consigo fazer o reenvio manual. Mas eu não entendo é pq que não funciona de forma automática nas etapas de preenchimento do formulário. DETALHE: para enviar para o ultimo servidor, eu já puxo tudo do banco de dados. Meu código bem simples mesmo: $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, 'https://central.servidor.com.br/post.php?id='.$product['integration_b4you']); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($array)); $response = curl_exec($ch); Preciso adicionar algum cabeçalho? Tem como descobrir até onde o arquivo deu problema, etc.. O motivo de não ter sido enviado, ou se foi enviado e due erro lá no outro servidor, etc..
  11. marlone

    Alguém pode me ajudar com API usando CURL / PHP?

    Eu estou tentando inserir uns dados em um sistema com CURL Esse é o documento deles. http://rockyecommerce.com.br/docs/ estou tentando inserir uma categoria, mas não funciona, não insere e nem retorna nada... Estou travado. Alguém pode me ajudar? <?php $endpoint = 'categories'; $token = ''; $ch = curl_init("https://api.plataformarocky.com.br/$endpoint"); curl_setopt_array($ch, [ CURLOPT_HTTPHEADER => [ 'POST /categories HTTP/1.1', "Authorization: Bearer $token", 'Accept: application/json', 'Content-Type: application/json' ], CURLOPT_RETURNTRANSFER => 1 ]); $post = array( 'id' => '1001', 'nome' => 'teste333', 'posicao' => '3' ); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, $post); $response = curl_exec($ch); curl_close($ch); $result = json_decode($response, true); ?>
  12. Lincoln Nogueira

    Usar o cURL para envio de XML

    Estou tentando enviar um XML via cURL porém está além de retornar na tela como resposta a mesma tela do processo que está no link ele retorna no servidor PHP Warning: Use of undefined constant XML - assumed 'XML' (this will throw an Error in a future version of PHP) in index.php on line 16 $conteudoXML= "<?xml version='1.0' encoding='UTF-8' ?>\n"; $conteudoXML.= "<requisicao>\n\t"; $conteudoXML.= "<login>xml1</login>\n\t"; $conteudoXML.= "<senha>14461</senha>\n\t"; $conteudoXML.= "</requisicao>\n\t"; $url = 'https://www.meusite.com.br/ws/exemplos/getPlanos.asp'; $curl = curl_init(); curl_setopt_array( $curl, array( CURLOPT_RETURNTRANSFER => 1, CURLOPT_URL => $url, CURLOPT_POST => 1, CURLOPT_POSTFIELDS => array( XML => $conteudoXML ) )); $resp = curl_exec($curl); curl_setopt($cr, CURLOPT_POST, TRUE); $resposta = curl_exec($curl); curl_close($curl); print_r($resposta);
  13. Primeiramente gostaria de relembrar a discussão que foi criada em Pesquisar dados de processos judiciais no site do TJSP A única solução que foi possível chegar na época foi a criação de um crawler que fizesse a consulta dos processos no TJSP. Pois bem, o código desenvolvido foi uma requisição do tipo GET por meio de AJAX ao portal do E-SAJ TJSP. Tudo estava funcionando normalmente, até que colocaram um CAPTCHA do Google. Em minhas pesquisas encontrei um artigo jurídico que fala sobre A Legalidade do Uso de Bots. Inclusive cita algumas leis que mostram que o poder público deve assegurar o acesso a dados públicos por meio de bots. O motivo pelo qual eu estou citando este artigo é que talvez já tenha uma API ou algo parecido que permita este acesso aos dados e talvez não seja algo tão divulgado. Importante dar também o devido destaque a um comentário que fala sobre o MNI (Modelo Nacional de Interoperabilidade). Não encontrei nenhuma documentação que indicasse a possibilidade de consulta de processos por meio do Nome ou Documento da Parte utilizando este modelo. Sendo assim, gostaria de saber qual é a melhor forma de Consultar Processos do TJSP por meio do Nome da Parte e/ou Documento. Será necessário "enfrentar" o CAPTCHA, ou existe alguma API para a consulta pública de processos do TJSP?
  14. asacap1000

    Página que recebe o curl/POST

    Galera estou com uma dúvida, tenho a parte de envio de dados para em Post, com encode json e curl. Já pesquisei em todos os lugares e não encontrei nada pra clarear as idéias. a parte final é essa do envio (cliente) header("Content-Type: ".$mediaType); $headers = array(); $headers[] = "Accept: ".$mediaType; $headers[] = "Accept-Charset: ".$charSet; $headers[] = "Accept-Encoding: ".$mediaType; $headers[] = "Content-Type: ".$mediaType.";charset=".$charSet; $headers[] = "Authorization: Basic ".$AuthorizationHeaderBase64; $ch = curl_init(); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS,"contatos=$contatos"); #campos que serão enviados curl_setopt($ch, CURLOPT_USERPWD, $AuthorizationHeaderBase64); curl_setopt($ch, CURLOPT_HEADER, $headers); curl_setopt($ch, CURLINFO_HTTP_CODE, true); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);#ativa se for ter retorno do chamada $result = curl_exec($ch); $result2 = json_decode($result,true); curl_close($ch); if($result2 === false) { $err = 'Curl error: ' . curl_error($ch); $result2 = $err; echo "This is text".$err; } var_dump ($result2); Preciso de ajuda para entender como deve ser feito a página que será chamada, no caso lado servidor. Como pode ver tenho um header configurado e será enviado com chave de autorização agora como isso é feito do lado servidor?? Se alguém puder me ajudar, preciso entregar este webservice sexta feira 18/10. Todos os dados recebidos serão salvos no BD Oracle.
  15. Galera estou com um problema, não sei como montar a estrura para receber os dados vindo deste script e salvar no banco de dados. Se alguem puder me dar uma força, pelo menos como montar essa estrutura já vai ajudar muito. Segue script de envio. <?php $charSet = "UTF-8"; $mediaType = "application/json"; //header("Content-Type: ".$mediaType); //Configuracoes do sistema $url_integra_aurora = 'http://webservice.test/verify.php';////INFORMAR O LINK QUE SERÁ SOLICITADO NO ENVIO DOS DADOS //receber neste campo todos os dados via POST////// /////ABAIXO INSERIR OS DADOS DO POST EM UMA ARRAY///// $contatos = array( 'nome'=>urlencode("Ricardo"), 'idade'=>urlencode("4321"), 'email'=>urlencode("ricardo@mane.com"), 'telefone'=>urlencode("666-999") ); /////APÓS RECEBER LANÇAR OS DADOS EM UMA ARRAY ABAIXO SERÁ CODFICADO PARA JSON $data_post = json_encode($contatos); $url = $url_integra_aurora.""; $Datasecurity = date('Ymd'); ///ASSIM SEERÁ GERADA UMA CHAVE POR DIA $SecurityId = $Datasecurity.':'.'CNPJ'; ////ADICIONA A DATA UMA IDENTIFICAÇÃO DA EMRPESA NESTE CASO CNPJ $SecurityKey = "d1ZLpLQRGyb-h6ZEqnbhlS23WjBWl_hUGpB615sKGfw"; ////CHAVE DE SEGURANÇA SECUNDÁRIA FIXA $headers = array(); $headers[] = "Accept: ".$mediaType; $headers[] = "Accept-Charset: ".$charSet; $headers[] = "Accept-Encoding: ".$mediaType; $headers[] = "Content-Type: ".$mediaType.";charset=".$charSet; $AuthorizationHeader = $SecurityId.":".$SecurityKey; //// CHAVE DE SEGURANÇA GERADA DIARIAMENTE JUNTO COM CHAVE DE SEGURANÇA FIXA $AuthorizationHeaderBase64 = base64_encode($AuthorizationHeader); // APÓS JUNTAR AS CHAVES ELAS SÃO CODIFICADAS EM HASH BASE64 E ENVIADAS PARA O SERVIDOR VALIDAR $headers[] = "Authorization: Basic ".$AuthorizationHeaderBase64; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $data_post); curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $result = curl_exec($ch); $result2 = json_decode($result,true); var_dump($result2); curl_close($ch); ?>
  16. Regiane Primoni

    Integração API Cielo 3.0

    Fiz toda integração da API 3.0 da Cielo utilizando o ambiente de teste deu tudo certo, quando coloquei url e credenciais de produção retorna erro 405. O certificado + os 3 arquivos cielo estão instalados. O código: <?php $array = array( "MerchantOrderId" => "2014111703", "Payment" => array( "Type"=> "CreditCard", "Amount"=> "15700", "Installments"=> "1", "SoftDescriptor"=> "123456789ABCD", "CreditCard" => array( "CardNumber" => "4551870000000183", "Holder" => "Teste Holder", "ExpirationDate" => "10/2030", "SecurityCode" => "123", "Brand" => "Visa" ), ), ); echo $json = json_encode($array); $ch = curl_init('https://api.cieloecommerce.cielo.com.br/'); curl_setopt ($ch, CURLOPT_CUSTOMREQUEST, "POST"); curl_setopt($ch, CURLOPT_POSTFIELDS, $json); curl_setopt ($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json', 'MerchantId: ' . '8b08ea04-951e-414e-9541-d2d19c36fdf6', 'MerchantKey: ' . 'QJCRZAUKNODFHXBISETYIJXSTMNTAKSDVEKCISGI', 'Content-Length: ' . strlen($json)) ); $result = curl_exec ($ch); $novo = json_decode($result); echo "TID ". $novo->Payment->Tid; O erro: {"MerchantOrderId":"2014111703","Payment":{"Type":"CreditCard","Amount":"15700","Installments":"1","SoftDescriptor":"123456789ABCD","CreditCard":{"CardNumber":"4551870000000183","Holder":"Teste Holder","ExpirationDate":"10\/2030","SecurityCode":"123","Brand":"Visa"}}} Server Error 405 - HTTP verb used to access this page is not allowed. The page you are looking for cannot be displayed because an invalid method (HTTP verb) was used to attempt access. Alguem consegue me ajudar por favor
  17. Estou quebrando a cabeça para tentar usar o código abaixo com PHP. Estou recebendo essa resposta de uma CURL; Ele veio com alguma compactação gzip. Gostaria de usar com json. Ou conseguir pegar cada dado. Abaixo desse codigo, deixei mais organizado. F|CL;IT=#PU#B1#C1#D13#E42466419#F2#I1#X4100#;PC=1;|EV;|MG;CC=Campeonato Bras;|MA;TP=FI;|PA;NF=81727410;NA=Palmeiras v Vasco da Gama;BC=20190727210000;P1=1148;P2=1144;|PA;NF=81876252;NA=Cruzeiro v Athletico Paranaense;BC=20190727230000;P1=1157;P2=164926;|PA;NF=81727416;NA=Fluminense v São Paulo;BC=20190727230000;P1=1146;P2=1135;|PA;NF=81727412;NA=Internacional v Ceará;BC=20190727230000;P1=16025;P2=1569;|PA;NF=81727418;NA=Chapecoense v Bahia;BC=20190728150000;P1=13184;P2=1247;|PA;NF=81727423;NA=Flamengo v Botafogo;BC=20190728200000;P1=1149;P2=1534;|PA;NF=81727420;NA=Santos v Avaí;BC=20190728200000;P1=1142;P2=9518;|PA;NF=81727427;NA=Fortaleza v Corinthians;BC=20190728230000;P1=1218;P2=1147;|PA;NF=81727430;NA=Goiás v Atlético Mineiro;BC=20190728230000;P1=1300;P2=16039;|PA;NF=81727432;NA=CSA v Grêmio;BC=20190730000000;P1=10811;P2=1159;|MA;TP=TE;|PA;TD=164926;NA=Athletico Paranaense;|PA;TD=16039;NA=Atlético Mineiro;|PA;TD=9518;NA=Avaí;|PA;TD=1247;NA=Bahia;|PA;TD=1534;NA=Botafogo;|PA;TD=1569;NA=Ceará;|PA;TD=13184;NA=Chapecoense;|PA;TD=1147;NA=Corinthians;|PA;TD=1157;NA=Cruzeiro;|PA;TD=10811;NA=CSA;|PA;TD=1149;NA=Flamengo;|PA;TD=1146;NA=Fluminense;|PA;TD=1218;NA=Fortaleza;|PA;TD=1300;NA=Goiás;|PA;TD=1159;NA=Grêmio;|PA;TD=16025;NA=Internacional;|PA;TD=1148;NA=Palmeiras;|PA;TD=1142;NA=Santos;|PA;TD=1135;NA=São Paulo;|PA;TD=1144;NA=Vasco da Gama;| string(1370) "F|CL;IT=#PU#B1#C1#D13#E42466419#F2#I1#X4100#;PC=1;|EV;|MG;CC=Campeonato Bras;|MA;TP=FI;| PA;NF=81727410;NA=Palmeiras v Vasco da Gama; BC=20190727210000; P1=1148; P2=1144;| PA;NF=81876252;NA=Cruzeiro v Athletico Paranaense; BC=20190727230000; P1=1157; P2=164926;| PA;NF=81727416;NA=Fluminense v São Paulo; BC=20190727230000; P1=1146; P2=1135;| PA;NF=81727412;NA=Internacional v Ceará; BC=20190727230000; P1=16025; P2=1569;| PA;NF=81727418;NA=Chapecoense v Bahia; BC=20190728150000; P1=13184; P2=1247;| PA;NF=81727423;NA=Flamengo v Botafogo; BC=20190728200000; P1=1149; P2=1534;| PA;NF=81727420;NA=Santos v Avaí; BC=20190728200000; P1=1142; P2=9518;| PA;NF=81727427;NA=Fortaleza v Corinthians; BC=20190728230000; P1=1218; P2=1147;| PA;NF=81727430;NA=Goiás v Atlético Mineiro; BC=20190728230000; P1=1300; P2=16039;| PA;NF=81727432;NA=CSA v Grêmio; BC=20190730000000; P1=10811; P2=1159;| MA;TP=TE;| PA;TD=164926;NA=Athletico Paranaense;| PA;TD=16039;NA=Atlético Mineiro;| PA;TD=9518;NA=Avaí;| PA;TD=1247;NA=Bahia;| PA;TD=1534;NA=Botafogo;| PA;TD=1569;NA=Ceará;| PA;TD=13184;NA=Chapecoense;| PA;TD=1147;NA=Corinthians;| PA;TD=1157;NA=Cruzeiro;| PA;TD=10811;NA=CSA;| PA;TD=1149;NA=Flamengo;| PA;TD=1146;NA=Fluminense;| PA;TD=1218;NA=Fortaleza;| PA;TD=1300;NA=Goiás;| PA;TD=1159;NA=Grêmio;| PA;TD=16025;NA=Internacional;| PA;TD=1148;NA=Palmeiras;| PA;TD=1142;NA=Santos;| PA;TD=1135;NA=São Paulo;| PA;TD=1144;NA=Vasco da Gama;|" Um help, pf!
  18. juninhogpe

    Listar dados de JSON com PHP e Curl

    Pessoal, estou consumindo uma API com PHP + Curl. Segue abaixo como estão os dados: JSON: {"odata.metadata":"http:\/\/ip:porta\/api\/sistema\/$metadata#sistema_interno.sistema_interno_cond_pgto_lista","odata.count":2,"value":[{"cond_pgto":466,"codigo":"000","descricao":"DINHEIRO","taxa":null,"tipo_operacao":"A","desconto":0,"tipo_pgto":0},{"condicoes_pgto":820,"codigo":"002","descricao":"MISTA","taxa":null,"tipo_operacao":"A","desconto":null,"tipo_pgto":10}]} chamada PHP: $url = 'http://ip:/porta/end_api?$format=json'; $username = 'usuario'; $password = 'senha'; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_USERPWD, "$username:$password"); curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC); $output = curl_exec($ch); $info = curl_getinfo($ch); curl_close($ch); $lista = json_decode($output, TRUE); ?> <table> <tr><th>Codigo</th></tr> <?php foreach ($lista['value'] as $lst): ?> <tr><td> <?php echo ($lst['codigo']) ?> </td></tr> <?php endforeach;?> </table> E quando executo o código tenho o retorno: Warning: Invalid argument supplied for foreach() in C:\AppServ\www\api\teste.php on line 44 No caso essa linha 44: foreach ($lista['value'] as $lst): Conseguem me ajudar a entender o por que do erro? Obrigado.
  19. A prefeitura oferece um ótimo suporte (sarcasmo) a webservice fornecida, e graças a isso estou perdido a muito tempo no que deveria ser um negócio muito simples. http://isscuritiba.curitiba.pr.gov.br/ Com o código abaixo eu faço login no webservice do ISS de curitiba, consigo enviar a requisição xml com sucesso e receber o retorno do webservice, porém, não consigo identificar no servidor/documentação quais são os campos obrigatórios pra trazer dados, e nem quais são os formatos dos campos, a minha resposta é que os dados enviados sempre estão inválidos. <?php $xml_data = '<?xml version="1.0" encoding="utf-8"?> <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <ConsultarNfse xmlns="http://www.e-governeapps2.com.br/"> <ConsultarNfseEnvio> <Prestador> <Cnpj>string</Cnpj> <InscricaoMunicipal>string</InscricaoMunicipal> </Prestador> </ConsultarNfseEnvio> </ConsultarNfse> </soap:Body> </soap:Envelope>'; $url = "https://pilotoisscuritiba.curitiba.pr.gov.br/nfse_ws/NfseWs.asmx?WSDL"; $headers = array( "POST /nfse_ws/nfsews.asmx HTTP/1.1", "Host: pilotoisscuritiba.curitiba.pr.gov.br", "Content-Type: text/xml; charset=utf-8", "SOAPAction: \"http://www.e-governeapps2.com.br/ConsultarNfse\"", "Content-length: " . strlen($xml_data) ); $xml = $xml_data; $ch = curl_init(); $soapUser = "username"; // username $soapPassword = "123456"; // password curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2); curl_setopt($ch, CURLOPT_CAINFO, getcwd() . '\Pre_ISS_Cert.pem'); curl_setopt($ch, CURLOPT_URL, "$url"); curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_SSH_PRIVATE_KEYFILE, getcwd() . '\Pref_ISS_Cert.pfx'); curl_setopt($ch, CURLOPT_SSLCERT, getcwd() . '\Pre_ISS_Cert.pem'); curl_setopt($ch, CURLOPT_SSLCERTPASSWD, "easy2017"); curl_setopt($ch, CURLOPT_POSTFIELDS, $xml); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 0); curl_setopt($ch, CURLOPT_REFERER, "$url"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_VERBOSE, 1); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); $ch_result = curl_exec($ch); print_r($ch_result); curl_close($ch); ?> Alguma ideia do que fazer nessa situação sabendo que não adianta ligar pro lugar que fornece o serviço?
  20. laerciocalheiros

    Capa da musica tocando

    Eu tenho um sistema em php que pega o nome da musica que tá tocando em um determinado streaming shoutcast e queria saber como faço um outro sistema onde posso buscar uma image que represente essa musica.
×

Informação importante

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