Jump to content
ukow

Dificuldade ao enviar XML com Curl

Recommended Posts

Olá!

Estou tentando realizar uma integração com a plataforma E.rede

Montei um formulário simples para teste ( http://divinho2.web2420.uni5.net/envioteste.php )

Ao tentar enviar o XML, o servidor fica pensando eternamente e depois de alguns minutos diz que o tempo de execução foi atingido.

O que pode ser?

 

Segue meu código:

 

Formulário:

<form action="curl.php" method="POST" name="formClient" accept-charset="ISO-8859-1">
<table>
<tr>
<td class="label">Número do cartão</td>
<td>
<input type="text" name="NRCARTAO" id="NRCARTAO" value="" style="width:200px;" maxlength="19"> </td>
</tr>
<tr>
<td class="label"> Validade </td>
<td>
<input type="text" name="MES" id="MES" value="" style="width: 95px; float:left; margin-right:10px;" maxlength="4" placeholder="MÊS"> 
<input type="text" name="ANO" id="ANO" value="" style="width: 95px;" maxlength="2" placeholder="ANO"> </td>
</tr>
<tr>
<td class="label">Código de segurança</td>
<td>
<input type="text" name="CVC2" id="CVC2" value="" style="width: 200px;" maxlength="4"> </td>
</tr>
<tr>
<td class="label">Titular</td>
<td>
<input type="text" name="PORTADOR" id="PORTADOR" value="" style="width: 200px;"> </td>
</tr>

<tr>
<td class="label">Valor total</td>
<td>
<input type="text" name="TOTAL" id="TOTAL" value="1.00" readonly style="width: 200px;" maxlength="16"> </td>
</tr>
</table>
<input type="submit" name="submit" value="Finalizar compra">
</form>

XML + Curl:

 

<?php 

$ANO = $_POST['ANO'];
$CVC2 = $_POST['CVC2'];
$FILIACAO = "FILIACAO";
$MES = $_POST['MES'];
$NRCARTAO = $_POST['NRCARTAO'];
$NUMPEDIDO = "20041416";
$ORIGEM = "01";
$PARCELAS = "00";
$PORTADOR = $_POST['PORTADOR'];
$RECORRENTE = "0";
$SENHA = "TOKEN";
$TOTAL = $_POST['TOTAL'];
$TRANSACAO = "74";

$conteudoXML= "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n";
$conteudoXML.= "<main>\n\t";
$conteudoXML.= "<emkt trans=\"11.05\">\n\t\t";
$conteudoXML.= "<Ano>";
$conteudoXML.= $ANO;
$conteudoXML.= "</Ano>\n\t\t";

$conteudoXML.= "<Cvc2>";
$conteudoXML.= $CVC2;
$conteudoXML.= "</Cvc2>\n\t\t";

$conteudoXML.= "<Filiacao>";
$conteudoXML.= $FILIACAO;
$conteudoXML.= "</Filiacao>\n\t\t\t";

$conteudoXML.= "<Mes>";
$conteudoXML.= $MES;
$conteudoXML.= "</Mes>\n\t\t\t";

$conteudoXML.= "<Nrcartao>";
$conteudoXML.= $NRCARTAO;
$conteudoXML.= "</Nrcartao>\n\t\t";

$conteudoXML.= "<NumPedido>";
$conteudoXML.= $NUMPEDIDO;
$conteudoXML.= "</NumPedido>\n\t\t";

$conteudoXML.= "<Origem>";
$conteudoXML.= $ORIGEM;
$conteudoXML.= "</Origem>\n\t\t";

$conteudoXML.= "<Parcelas>";
$conteudoXML.= $PARCELAS;
$conteudoXML.= "</Parcelas>\n\t\t";

$conteudoXML.= "<Portador>";
$conteudoXML.= $PORTADOR;
$conteudoXML.= "</Portador>\n\t\t";

$conteudoXML.= "<Recorrente>";
$conteudoXML.= $RECORRENTE;
$conteudoXML.= "</Recorrente>\n\t\t";

$conteudoXML.= "<Senha>";
$conteudoXML.= $SENHA;
$conteudoXML.= "</Senha>\n\t\t";

$conteudoXML.= "<Total>";
$conteudoXML.= $TOTAL;
$conteudoXML.= "</Total>\n\t\t";

$conteudoXML.= "<Transacao>";
$conteudoXML.= $TRANSACAO;
$conteudoXML.= "</Transacao>\n\t\t";

$conteudoXML.= "</emkt>\n";
$conteudoXML.= "</main>\n";
$url = 'https://scommerce.userede.com.br/Redecard.Komerci.External.WcfKomerci/KomerciWcf.svc';
$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($curl, CURLOPT_URL, 'http://divinho2.web2420.uni5.net/envioteste.php');
$resposta = curl_exec($curl);
curl_close($curl);
echo $resposta;
?>

Obrigado!

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By ZeroEnd
      Boa tarde.

      Nao tenho muito conhecimento em javascript mas estou aprendendo aos poucos.

      Minha dúvida é sobre Xpath, bom na verdade eu entendi de forma básica como fazer uma busca usando Xpath, tanto é que para isso eu estava usando o programa Xpath Visualizer para entender.
      Mas eu não achei como empregar isso em uma página html, usando as mesmas variáveis que uso no programa para ter o mesmo resultado.
      Gostaria de saber se em algum lugar a informações de forma simples ou algo para tomar uma direção.
    • By Lenon John
      Estou começando no PHP e preciso criar um simples sistema para emitir boletos na web com o SICOOB.
      OBS: Que quero me conectar a API SICOOB e não sei por onde começar.
       
      O SICOOB disponibiliza na página de developers.sicoob.com.br essas informações:
      GET https://sandbox.sicoob.com.br/oauth2/authorize?response_type=code&redirect_uri=[[callback_url]]&client_id=[[client_id]]&cooperativa=[[cooperativa]]&contaCorrente=[[conta]]&versaoHash=3&scope=[[escopos]]
      PARÂMETRO: response_type = Tipo de resposta gerada pelo fluxo authorize
      PARÂMETRO :redirect_uri = Endereço que será redirecionado após a autorização
      PARÂMETRO: client_id = Chave de acesso às APIs
       
      RESPOSTA:
      [[callback_url]/code=2eb7fd2c-aaf9-3655-bcf5-71972b50eb3d&state=0.3549351162541514

       
      Obtendo Access Token:
      POST https://sandbox.sicoob.com.br/token Headers Content-type: "www/form-url-encoded" Authorization: Basic [[token_basic]] Payload grant_type=authorization_code&code=2eb7fd2c-aaf9-3655-bcf5-71972b50eb3d&redirect_uri=[[callback_url]] E mais umas informações complementares aqui. Se alguém puder me ajudar, passo mais informações.
       
       
    • By ilbett
      Boa noite prezados.
       
      Estou com um problema há alguns dias. Espero que um de vocês tenha uma luz para ele haha.
       
      Estou fazendo uma integração entre a loja de um cliente hospedada na NuvemShop e a automatizadora de marketing RD Station.
      Através do Postman eu faço um GET da NuvemShop e um POST dos dados pegos da NuvemShop para a RD Station.
      O Problema, nesse caso, é que eles nomeiam as strings de formas diferentes.
       
      Vocês conhecem algum intermediador que receba esse POST com os dados da NuvemShop e traduza, por exemplo, "costumer.name" para "name" e envie para a RD?
      Ou algum script que eu possa rodar no Postman para fazer essas "traduções" das strings?
       
      Desde já, muito obrigado!
    • By JoãoRicardo.Lima
      Olá pessoal blz?.
      Estou com problemas para ler um xml, estou pegando ele com simplexml_load_file(), quando eu dou um vardump ele me mostra todas as propriedades e tals, mas quando eu tento pegar a propriedade(exemplo $xml->emit) ele me retorna null, abaixo está o código.
       
      $arquivo = $_FILES['xml_conta']; $xml = simplexml_load_file($arquivo['tmp_name']); var_dump($xml->ide); Já tentei pegar o arquivo direto do diretório mas da no mesmo. Abaixo o meu var_dump().
       
      object(SimpleXMLElement)#2 (3) { ["@attributes"]=> array(1) { ["versao"]=> string(4) "4.00" } ["NFe"]=> object(SimpleXMLElement)#4 (2) { ["infNFe"]=> object(SimpleXMLElement)#6 (9) { ["@attributes"]=> array(2) { ["versao"]=> string(4) "4.00" ["Id"]=> string(47) "NFe51191203927792000132550010003900572477841258" } ["ide"]=> object(SimpleXMLElement)#8 (22) { ["cUF"]=> string(2) "51" ["cNF"]=> string(8) "47825479" ["natOp"]=> string(33) "Venda Terceiros" ["mod"]=> string(2) "50" ["serie"]=> string(1) "1" ["nNF"]=> string(6) "397894" ["dhEmi"]=> string(25) "2019-12-05T18:35:33-04:00" ["dhSaiEnt"]=> string(25) "2019-12-05T18:35:33-04:00" ["tpNF"]=> string(1) "1" ["idDest"]=> string(1) "1" ["cMunFG"]=> string(7) "51074" ["tpImp"]=> string(1) "3" ["tpEmis"]=> string(1) "2" ["cDV"]=> string(1) "5" ["tpAmb"]=> string(1) "2" ["finNFe"]=> string(1) "2" ["indFinal"]=> string(1) "1" ["indPres"]=> string(1) "1" ["procEmi"]=> string(1) "0" ["verProc"]=> string(7) "3.5.1.2" ["dhCont"]=> string(25) "2019-12-05T15:32:22-04:00" ["xJust"]=> string(23) "sem conexao com o sefaz" }  
    • By PAULO FRÓES
      Opa, pessoal!
       
      Alguém conhece alguma API que calcula ICMS-ST, IPI e ICMS normais, sobre alguma transação, sem ser um emissor de NF-e?
      Seria útil para estimarmos custos em uma compra de mercadorias, ou, no caso de venda, para o cliente saber as incidências na fonte sobre determinada venda (muito comum em indústrias - IPI e ST).
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.