Enviar dados com Via Post para gerar XML

Enviada por CHARLES CORRÊA 
CHARLES CORRÊA
Enviar dados com Via Post para gerar XML
17 de August de 2012 às 10:48PM
Prezados Amigos

Gostaria de uma mãozinha que está me dando dor de cabeça

é o seguinte eu criei um botão que envia via POST alguns dados conforme abaixo

Botão Form

<form name="GerenciaNet" id="GerenciaNet" target='GerenciaNet' method="post" action="gerencianet_boletos.php">
<p align="center">
<input name="button" type="image" id="button" value="Submit"
src="img/pagamento_boleto.png" width="150" height="100" />
</p>
<input name="token" type="hidden" value="67173eb941631718808595c872a93205" />
<input name="produto" type="hidden" value="FATURA: F458C89" />
<input name="valor_produto" type="hidden" value="2500" />
<input name="vencimento" type="hidden" value="13/03/2015" />
<input name="nome_cliente" type="hidden" value="Alberto" />
<input name="email_cliente" type="hidden" value="beto.torres@gmail.com" />
<input name="estado_cliente" type="hidden" value="RS" />
<input name="cidade_cliente" type="hidden" value="Porto Alegre" />
<input name="documento_cliente" type="hidden" value="427.490.813-51" />
</form>

Arquivo gerencianet_boletos.php


<?php
$ch = curl_init();
$token = $_POST['token'];
$documento_cliente = $_POST['documento_cliente'];
$email_cliente = $_POST['email_cliente'];
$nome_cliente = $_POST['nome_cliente'];
$produto = $_POST['produto'];
$valor_produto = $_POST['valor_produto'];
$estado_cliente = $_POST['estado_cliente'];
$cidade_cliente = $_POST['cidade_cliente'];
$vencimento = $_POST['vencimento'];
$estruturaEnvio = 'json';
$estruturaResposta = 'html';
$metodo = 'boleto';
$submetodo = 'emite';
$url = 'https://v3.contagerencianet.com.br/rest/'.$estruturaEnvio.'/'.$metodo.'/'.$submetodo.'/'.$estruturaResposta;
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_MAXREDIRS, 2);
curl_setopt($ch, CURLOPT_AUTOREFERER, true);
$json_temp ='{
"boleto":{
"token":"$token",
"clientes":{
"cliente":{
"nomeRazaoSocial":"$nome_cliente",
"opcionais":{
"email":"$email_cliente",
"estado":"$estado_cliente",
"cidade":"$cidade_cliente"
}
}
},
"itens":{
"item":{
"descricao":"$produto",
"valor":"$valor_produto",
"qtde":"1"
}
},
"opcionais":{
"frete":"0",
"descontoSobreTotal":"0",
"contra":"s",
"btaxa":"n"
}
}
}
';
$data = array('json' => $json_temp);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);
curl_setopt($ch, CURLOPT_USERAGENT, 'Exemplo/0.1');
$resposta = curl_exec($ch);
echo $resposta;
curl_close($ch);
?>


Poderiam me orientar o que estou fazendo de errado? pois me parece que o arquivo não está criando as variaveis para o envio egerar o XMl para criar o boleto.

Desde de já agradeço a ajuda
Marcos Nicolau
Re: Enviar dados com Via Post para gerar XML
20 de August de 2012 às 11:26AM
Charles,

na montagem do seu Json, vc esqueceu de concatenar a variável, já que o Json está dentro de aspas simples.

Att,
Marcos
CHARLES CORRÊA
Re: Enviar dados com Via Post para gerar XML
01 de September de 2012 às 10:42AM
Agradeço Amigo

Funcionou conforme comentado

agradeço a ajuda
por favor estou com o seguinte problema sou iniciante em php e tenho um programa valida.php, criado com a ferramenta radphp que foi feito por os programadores da uma empresa que autentica o cliente, usuário e senha no banco oracle. Para o programa funcionar deve existir uma sessão persistente de nome "usuario" com as variáveis "usuario_codcli", "usuario_userresp" e "usuario_senharesp". Essa sessão deve ser criada no programa e armazenar os dados digitados no formulário dentro das variáveis da sessão permanente. Em seguida chama valida.php

Como devo fazer para armazenar os dados digitados no formulário dentro das variáveis da sessão permanente.

Me ajuda por favor.
fernando
Re: Enviar dados com Via Post para gerar XML
02 de April de 2014 às 11:13PM
ola amigo como vc conseguiu fazerisso, poderia passar o codigo?
Você precisa estar logado no PHPBrasil.com para poder enviar mensagens para os nossos fóruns.

Faça o login aqui.