Cielo, Curl
Estou com problema para fazer a integração da Cielo, está retornando esse erro
06-28 13:52:07 (BRT)
ARQUIVO: /home//public_html/lojaexemplo-php/includes/include.php(Linha 141)
MENSAGEM:
curl_error(): 10 is not a valid cURL handle resource
O que pode ser?
Meu código é esse?
<?php
require 'errorHandling.php';
require_once 'pedido.php';
require_once 'logger.php';
define('VERSAO', "1.1.0");
session_start();
if(!isset($_SESSION["pedidos"]))
{
$_SESSION["pedidos"] = new ArrayObject();
}
// CONSTANTES
define("ENDERECO_BASE","https://ecommerce.cielo.com.br");
define("ENDERECO", ENDERECO_BASE."/servicos/ecommwsec.do");
define("LOJA", "1061233968");
define("LOJA_CHAVE", "2457a530c38381b2bf34608da2c3521f41ecdfdefb9ee01d25fc981ad09f5ed7");
// Envia requisição
function httprequest($paEndereco, $paPost){
$sessao_curl = curl_init();
curl_setopt($sessao_curl, CURLOPT_URL, $paEndereco);
curl_setopt($sessao_curl, CURLOPT_FAILONERROR, true);
// CURLOPT_SSL_VERIFYPEER
// verifica a validade do certificado
curl_setopt($sessao_curl, CURLOPT_SSL_VERIFYPEER, true);
// CURLOPPT_SSL_VERIFYHOST
// verifica se a identidade do servidor bate com aquela informada no certificado
curl_setopt($sessao_curl, CURLOPT_SSL_VERIFYHOST, 2);
// CURLOPT_SSL_CAINFO
// informa a localização do certificado para verificação com o peer
curl_setopt($sessao_curl, CURLOPT_CAINFO, getcwd() .
"/ssl/verisign.crt");
curl_setopt($sessao_curl, CURLOPT_SSLVERSION, 3);
// CURLOPT_CONNECTTIMEOUT
// o tempo em segundos de espera para obter uma conexão
curl_setopt($sessao_curl, CURLOPT_CONNECTTIMEOUT, 10);
// CURLOPT_TIMEOUT
// o tempo máximo em segundos de espera para a execução da requisição (curl_exec)
curl_setopt($sessao_curl, CURLOPT_TIMEOUT, 40);
// CURLOPT_RETURNTRANSFER
// TRUE para curl_exec retornar uma string de resultado em caso de sucesso, ao
// invés de imprimir o resultado na tela. Retorna FALSE se há problemas na requisição
curl_setopt($sessao_curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($sessao_curl, CURLOPT_POST, true);
curl_setopt($sessao_curl, CURLOPT_POSTFIELDS, $paPost );
$resultado = curl_exec($sessao_curl);
curl_close($sessao_curl);
if ($resultado)
{
return $resultado;
}
else
{
return curl_error($sessao_curl);
}
}
// Monta URL de retorno
function ReturnURL()
{
$pageURL = 'http';
if ($_SERVER["SERVER_PORT"] == 443) // protocolo https
{
$pageURL .= 's';
}
$pageURL .= "://";
if ($_SERVER["SERVER_PORT"] != "80")
{
$pageURL .= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
} else {
$pageURL .= $_SERVER["SERVER_NAME"]. substr($_SERVER["REQUEST_URI"], 0);
}
// ALTERNATIVA PARA SERVER_NAME -> HOST_HTTP
$file = substr($_SERVER["SCRIPT_NAME"],strrpos($_SERVER["SCRIPT_NAME"],"/")+1);
$ReturnURL = str_replace($file, "retorno.php", $pageURL);
return $ReturnURL;
}
?>Discussão (9)
Carregando comentários...